{
  "schema_version": 1,
  "method": "conservative-relation-aware-sentiment-v4",
  "publication_count": 1369,
  "mention_count": 1793,
  "database_counts": {
    "Oracle Database": 547,
    "PostgreSQL": 487,
    "YugabyteDB": 392,
    "MongoDB": 142,
    "Amazon Aurora": 72,
    "Amazon DynamoDB": 36,
    "MySQL": 32,
    "Microsoft SQL Server": 18,
    "CockroachDB": 16,
    "DocumentDB (PostgreSQL)": 12,
    "Cassandra": 12,
    "Azure HorizonDB": 11,
    "Amazon DocumentDB": 8,
    "SQLite": 5,
    "Db2": 3
  },
  "employment_periods": [
    {
      "key": "microsoft-2026",
      "company": "Microsoft",
      "range": "Jun 2026-Present",
      "start": "2026-06-01",
      "count": 34
    },
    {
      "key": "mongodb-2025",
      "company": "MongoDB",
      "range": "Feb 2025-May 2026",
      "start": "2025-02-06",
      "count": 150
    },
    {
      "key": "yugabyte-2021",
      "company": "Yugabyte",
      "range": "Jul 2021-Feb 2025",
      "start": "2021-07-01",
      "count": 462
    },
    {
      "key": "dbi-services-2020",
      "company": "dbi services",
      "range": "Feb 2020-Jun 2021",
      "start": "2020-02-01",
      "count": 137
    },
    {
      "key": "cern-2018",
      "company": "CERN",
      "range": "Sep 2018-Feb 2020",
      "start": "2018-09-01",
      "count": 94
    },
    {
      "key": "dbi-services-2014",
      "company": "dbi services",
      "range": "2014-Sep 2018",
      "start": "2014-01-01",
      "count": 489
    },
    {
      "key": "trivadis-2010",
      "company": "Trivadis AG",
      "range": "Dec 2010-Nov 2013",
      "start": "2010-12-01",
      "count": 3
    }
  ],
  "aggregates": {
    "Azure HorizonDB": {
      "count": 11,
      "periods": {
        "microsoft-2026": {
          "count": 11,
          "mean_evaluation": 0.364,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 7,
            "1": 4,
            "2": 0
          },
          "supportive_share": 0.3636,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "Oracle Database": {
      "count": 547,
      "periods": {
        "microsoft-2026": {
          "count": 7,
          "mean_evaluation": 0.286,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 5,
            "1": 2,
            "2": 0
          },
          "supportive_share": 0.2857,
          "critical_share": 0.0,
          "mixed_share": 0.1429,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "mongodb-2025": {
          "count": 29,
          "mean_evaluation": 0.034,
          "distribution": {
            "-2": 0,
            "-1": 5,
            "0": 18,
            "1": 6,
            "2": 0
          },
          "supportive_share": 0.2069,
          "critical_share": 0.1724,
          "mixed_share": 0.069,
          "evidence_backed_critical_share": 0.4,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 94,
          "mean_evaluation": 0.138,
          "distribution": {
            "-2": 0,
            "-1": 3,
            "0": 77,
            "1": 12,
            "2": 2
          },
          "supportive_share": 0.1489,
          "critical_share": 0.0319,
          "mixed_share": 0.0213,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 82,
          "mean_evaluation": 0.207,
          "distribution": {
            "-2": 2,
            "-1": 2,
            "0": 55,
            "1": 23,
            "2": 0
          },
          "supportive_share": 0.2805,
          "critical_share": 0.0488,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 0.75,
          "product_wide_critical_count": 0
        },
        "cern-2018": {
          "count": 67,
          "mean_evaluation": 0.119,
          "distribution": {
            "-2": 2,
            "-1": 1,
            "0": 52,
            "1": 11,
            "2": 1
          },
          "supportive_share": 0.1791,
          "critical_share": 0.0448,
          "mixed_share": 0.0149,
          "evidence_backed_critical_share": 0.3333,
          "product_wide_critical_count": 0
        },
        "dbi-services-2014": {
          "count": 266,
          "mean_evaluation": 0.18,
          "distribution": {
            "-2": 3,
            "-1": 18,
            "0": 181,
            "1": 56,
            "2": 8
          },
          "supportive_share": 0.2406,
          "critical_share": 0.0789,
          "mixed_share": 0.0414,
          "evidence_backed_critical_share": 0.381,
          "product_wide_critical_count": 2
        },
        "trivadis-2010": {
          "count": 2,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 2,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "PostgreSQL": {
      "count": 487,
      "periods": {
        "microsoft-2026": {
          "count": 34,
          "mean_evaluation": 0.5,
          "distribution": {
            "-2": 0,
            "-1": 2,
            "0": 14,
            "1": 17,
            "2": 1
          },
          "supportive_share": 0.5294,
          "critical_share": 0.0588,
          "mixed_share": 0.0588,
          "evidence_backed_critical_share": 0.5,
          "product_wide_critical_count": 0
        },
        "mongodb-2025": {
          "count": 72,
          "mean_evaluation": 0.125,
          "distribution": {
            "-2": 1,
            "-1": 12,
            "0": 39,
            "1": 17,
            "2": 3
          },
          "supportive_share": 0.2778,
          "critical_share": 0.1806,
          "mixed_share": 0.0833,
          "evidence_backed_critical_share": 0.2308,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 309,
          "mean_evaluation": 0.184,
          "distribution": {
            "-2": 0,
            "-1": 28,
            "0": 201,
            "1": 75,
            "2": 5
          },
          "supportive_share": 0.2589,
          "critical_share": 0.0906,
          "mixed_share": 0.0453,
          "evidence_backed_critical_share": 0.25,
          "product_wide_critical_count": 1
        },
        "dbi-services-2020": {
          "count": 37,
          "mean_evaluation": 0.162,
          "distribution": {
            "-2": 1,
            "-1": 2,
            "0": 25,
            "1": 8,
            "2": 1
          },
          "supportive_share": 0.2432,
          "critical_share": 0.0811,
          "mixed_share": 0.1081,
          "evidence_backed_critical_share": 0.6667,
          "product_wide_critical_count": 2
        },
        "cern-2018": {
          "count": 10,
          "mean_evaluation": 0.4,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 6,
            "1": 4,
            "2": 0
          },
          "supportive_share": 0.4,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2014": {
          "count": 25,
          "mean_evaluation": 0.2,
          "distribution": {
            "-2": 0,
            "-1": 1,
            "0": 18,
            "1": 6,
            "2": 0
          },
          "supportive_share": 0.24,
          "critical_share": 0.04,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        }
      }
    },
    "MongoDB": {
      "count": 142,
      "periods": {
        "microsoft-2026": {
          "count": 7,
          "mean_evaluation": 0.143,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 6,
            "1": 1,
            "2": 0
          },
          "supportive_share": 0.1429,
          "critical_share": 0.0,
          "mixed_share": 0.2857,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "mongodb-2025": {
          "count": 124,
          "mean_evaluation": 0.516,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 61,
            "1": 62,
            "2": 1
          },
          "supportive_share": 0.5081,
          "critical_share": 0.0,
          "mixed_share": 0.0645,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 9,
          "mean_evaluation": 0.444,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 5,
            "1": 4,
            "2": 0
          },
          "supportive_share": 0.4444,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 2,
          "mean_evaluation": 1.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 0,
            "1": 2,
            "2": 0
          },
          "supportive_share": 1.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "Microsoft SQL Server": {
      "count": 18,
      "periods": {
        "microsoft-2026": {
          "count": 1,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 7,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 7,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 7,
          "mean_evaluation": 0.143,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 6,
            "1": 1,
            "2": 0
          },
          "supportive_share": 0.1429,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "cern-2018": {
          "count": 1,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2014": {
          "count": 2,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 2,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "DocumentDB (PostgreSQL)": {
      "count": 12,
      "periods": {
        "microsoft-2026": {
          "count": 5,
          "mean_evaluation": 0.4,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 3,
            "1": 2,
            "2": 0
          },
          "supportive_share": 0.4,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "mongodb-2025": {
          "count": 7,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 1,
            "0": 5,
            "1": 1,
            "2": 0
          },
          "supportive_share": 0.1429,
          "critical_share": 0.1429,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 1.0,
          "product_wide_critical_count": 0
        }
      }
    },
    "YugabyteDB": {
      "count": 392,
      "periods": {
        "microsoft-2026": {
          "count": 1,
          "mean_evaluation": -1.0,
          "distribution": {
            "-2": 0,
            "-1": 1,
            "0": 0,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 1.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        },
        "mongodb-2025": {
          "count": 4,
          "mean_evaluation": 1.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 2,
            "1": 0,
            "2": 2
          },
          "supportive_share": 0.5,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 377,
          "mean_evaluation": 0.316,
          "distribution": {
            "-2": 0,
            "-1": 14,
            "0": 236,
            "1": 121,
            "2": 6
          },
          "supportive_share": 0.3369,
          "critical_share": 0.0371,
          "mixed_share": 0.0265,
          "evidence_backed_critical_share": 0.3571,
          "product_wide_critical_count": 2
        },
        "dbi-services-2020": {
          "count": 9,
          "mean_evaluation": 0.222,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 7,
            "1": 2,
            "2": 0
          },
          "supportive_share": 0.2222,
          "critical_share": 0.0,
          "mixed_share": 0.1111,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "cern-2018": {
          "count": 1,
          "mean_evaluation": 1.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 0,
            "1": 1,
            "2": 0
          },
          "supportive_share": 1.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "Amazon DocumentDB": {
      "count": 8,
      "periods": {
        "mongodb-2025": {
          "count": 8,
          "mean_evaluation": 0.125,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 7,
            "1": 1,
            "2": 0
          },
          "supportive_share": 0.125,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "Amazon DynamoDB": {
      "count": 36,
      "periods": {
        "mongodb-2025": {
          "count": 3,
          "mean_evaluation": 0.667,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 2,
            "2": 0
          },
          "supportive_share": 0.6667,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 8,
          "mean_evaluation": 0.375,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 5,
            "1": 3,
            "2": 0
          },
          "supportive_share": 0.375,
          "critical_share": 0.0,
          "mixed_share": 0.125,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 25,
          "mean_evaluation": 0.48,
          "distribution": {
            "-2": 0,
            "-1": 2,
            "0": 10,
            "1": 12,
            "2": 1
          },
          "supportive_share": 0.52,
          "critical_share": 0.08,
          "mixed_share": 0.08,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        }
      }
    },
    "MySQL": {
      "count": 32,
      "periods": {
        "mongodb-2025": {
          "count": 5,
          "mean_evaluation": -0.2,
          "distribution": {
            "-2": 0,
            "-1": 1,
            "0": 4,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.2,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 10,
          "mean_evaluation": 0.2,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 8,
            "1": 2,
            "2": 0
          },
          "supportive_share": 0.2,
          "critical_share": 0.0,
          "mixed_share": 0.1,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 12,
          "mean_evaluation": -0.25,
          "distribution": {
            "-2": 1,
            "-1": 1,
            "0": 10,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.1667,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 0.5,
          "product_wide_critical_count": 0
        },
        "cern-2018": {
          "count": 2,
          "mean_evaluation": -0.5,
          "distribution": {
            "-2": 0,
            "-1": 1,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.5,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        },
        "dbi-services-2014": {
          "count": 3,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 3,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "Amazon Aurora": {
      "count": 72,
      "periods": {
        "mongodb-2025": {
          "count": 7,
          "mean_evaluation": 0.429,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 4,
            "1": 3,
            "2": 0
          },
          "supportive_share": 0.4286,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "yugabyte-2021": {
          "count": 47,
          "mean_evaluation": 0.191,
          "distribution": {
            "-2": 0,
            "-1": 4,
            "0": 31,
            "1": 11,
            "2": 1
          },
          "supportive_share": 0.2553,
          "critical_share": 0.0851,
          "mixed_share": 0.0213,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 18,
          "mean_evaluation": 0.056,
          "distribution": {
            "-2": 0,
            "-1": 2,
            "0": 13,
            "1": 3,
            "2": 0
          },
          "supportive_share": 0.1667,
          "critical_share": 0.1111,
          "mixed_share": 0.0556,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        }
      }
    },
    "Cassandra": {
      "count": 12,
      "periods": {
        "yugabyte-2021": {
          "count": 11,
          "mean_evaluation": 0.091,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 10,
            "1": 1,
            "2": 0
          },
          "supportive_share": 0.0909,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 1,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "CockroachDB": {
      "count": 16,
      "periods": {
        "yugabyte-2021": {
          "count": 15,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 1,
            "0": 13,
            "1": 1,
            "2": 0
          },
          "supportive_share": 0.0667,
          "critical_share": 0.0667,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": 0.0,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 1,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "SQLite": {
      "count": 5,
      "periods": {
        "yugabyte-2021": {
          "count": 2,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 2,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 2,
          "mean_evaluation": 1.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 0,
            "1": 2,
            "2": 0
          },
          "supportive_share": 1.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2014": {
          "count": 1,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    },
    "Db2": {
      "count": 3,
      "periods": {
        "yugabyte-2021": {
          "count": 1,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2020": {
          "count": 1,
          "mean_evaluation": 0.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 1,
            "1": 0,
            "2": 0
          },
          "supportive_share": 0.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        },
        "dbi-services-2014": {
          "count": 1,
          "mean_evaluation": 1.0,
          "distribution": {
            "-2": 0,
            "-1": 0,
            "0": 0,
            "1": 1,
            "2": 0
          },
          "supportive_share": 1.0,
          "critical_share": 0.0,
          "mixed_share": 0.0,
          "evidence_backed_critical_share": null,
          "product_wide_critical_count": 0
        }
      }
    }
  },
  "records": [
    {
      "publication_id": "soug:NL_2013_1_FranckPachot_TableLockModes",
      "database": "Oracle Database",
      "date": "2012-12-01",
      "employment_period": "trivadis-2010",
      "title": "Oracle Table Lock Modes: SS, RS, SX, RX, S, SSX, SRX, X Made Easy",
      "url": "https://www.soug.ch",
      "source": "soug",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "low",
      "summary_source": "title only",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Table Lock Modes: SS, RS, SX, RX, S, SSX, SRX, X Made Easy.",
      "relation_aware": false
    },
    {
      "publication_id": "soug:NL_2013_2_FranckPachot_ExadataSmartScan",
      "database": "Oracle Database",
      "date": "2013-04-01",
      "employment_period": "trivadis-2010",
      "title": "Exadata X3 in Action: Measuring Smart Scan Efficiency with AWR",
      "url": "https://www.slideshare.net/slideshow/exadata-smartscan/41302612",
      "source": "soug",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "low",
      "summary_source": "title only",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exadata X3 in Action: Measuring Smart Scan Efficiency with AWR.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:archivelog-deletion-policy-for-standby-database-in-oracle-data-guard",
      "database": "Oracle Database",
      "date": "2014-01-27",
      "employment_period": "dbi-services-2014",
      "title": "Archivelog deletion policy for Standby Database in Oracle Data Guard",
      "url": "https://www.dbi-services.com/blog/archivelog-deletion-policy-for-standby-database-in-oracle-data-guard/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Archivelog deletion policy for Standby Database in Oracle Data Guard.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-is-hanging-dont-forget-hanganalyze-and-systemstate",
      "database": "Oracle Database",
      "date": "2014-02-07",
      "employment_period": "dbi-services-2014",
      "title": "Oracle is hanging? Don’t forget hanganalyze and systemstate!",
      "url": "https://www.dbi-services.com/blog/oracle-is-hanging-dont-forget-hanganalyze-and-systemstate/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For exemple I use the DIAG background process (it’s better not to use vital processes for that) SQL> oradebug setorapname diag Oracle pid: 8, Unix process pid: 7805, image: oracle@vboxora12c (DIAG) Core message Even in hurry, Always check an hanganalyze to understand the problem.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-et-dbvisit-replicate-pour-migrer-sans-arret-de-service-et-sans-stress",
      "database": "Oracle Database",
      "date": "2014-02-13",
      "employment_period": "dbi-services-2014",
      "title": "Oracle et Dbvisit Replicate pour migrer sans arrêt de service… et sans stress",
      "url": "https://www.dbi-services.com/blog/oracle-et-dbvisit-replicate-pour-migrer-sans-arret-de-service-et-sans-stress/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle et Dbvisit Replicate pour migrer sans arrêt de service… et sans stress.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-partitioned-sequences-a-future-new-feature-in-12c",
      "database": "Oracle Database",
      "date": "2014-02-20",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Partitioned Sequences – a future new feature in 12c?",
      "url": "https://www.dbi-services.com/blog/oracle-partitioned-sequences-a-future-new-feature-in-12c/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Partitioned Sequences – a future new feature in 12c?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12c-in-memory-option-waiting-for-12102",
      "database": "Oracle Database",
      "date": "2014-03-04",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12c In-Memory option: waiting for 12.1.0.2",
      "url": "https://www.dbi-services.com/blog/oracle-12c-in-memory-option-waiting-for-12102/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c In-Memory option: waiting for 12.1.0.2.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:investigating-oracle-lock-issues-with-event-10704",
      "database": "Oracle Database",
      "date": "2014-03-14",
      "employment_period": "dbi-services-2014",
      "title": "Investigating Oracle lock issues with event 10704",
      "url": "https://www.dbi-services.com/blog/investigating-oracle-lock-issues-with-event-10704/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Investigating Oracle lock issues with event 10704.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-consequences-of-nologging-in-oracle",
      "database": "Oracle Database",
      "date": "2014-03-23",
      "employment_period": "dbi-services-2014",
      "title": "The consequences of NOLOGGING in Oracle",
      "url": "https://www.dbi-services.com/blog/the-consequences-of-nologging-in-oracle/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The consequences of NOLOGGING in Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:best-practice-to-send-an-oracle-execution-plan",
      "database": "Oracle Database",
      "date": "2014-04-08",
      "employment_period": "dbi-services-2014",
      "title": "Best practice for the sending of an Oracle execution plan",
      "url": "https://www.dbi-services.com/blog/best-practice-to-send-an-oracle-execution-plan/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Best practice for the sending of an Oracle execution plan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12c-adaptive-plan-inflexion-point",
      "database": "Oracle Database",
      "date": "2014-04-11",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12c Adaptive Plan & inflection point",
      "url": "https://www.dbi-services.com/blog/oracle-12c-adaptive-plan-inflexion-point/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c Adaptive Plan & inflection point.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12c-cdb-metadata-a-object-links-internals",
      "database": "Oracle Database",
      "date": "2014-04-30",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12c CDB – metadata & object links internals",
      "url": "https://www.dbi-services.com/blog/oracle-12c-cdb-metadata-a-object-links-internals/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c CDB – metadata & object links internals.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-rownum-vs-rownumber-and-12c-fetch-first",
      "database": "Oracle Database",
      "date": "2014-05-05",
      "employment_period": "dbi-services-2014",
      "title": "ROWNUM vs ROW_NUMBER() and 12c fetch first",
      "url": "https://www.dbi-services.com/blog/oracle-rownum-vs-rownumber-and-12c-fetch-first/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "11g documentation for rownum says: The ROW_NUMBER built-in SQL function provides superior support for ordering the results of a query 12c allows the ANSI syntax ORDER BY…FETCH FIRST…ROWS ONLY which is translated to row_number() predicate 12c documentation for rownum adds: The row_limiting_clause of the SELECT statement provides superior support rownum has first_rows_n issues as well As you can see, Oracle does not sa",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:exploring-oracle-se-a-ee-performance-statistics-with-orachrome-lighty",
      "database": "Oracle Database",
      "date": "2014-05-12",
      "employment_period": "dbi-services-2014",
      "title": "Exploring Oracle SE & EE performance statistics with Orachrome Lighty",
      "url": "https://www.dbi-services.com/blog/exploring-oracle-se-a-ee-performance-statistics-with-orachrome-lighty/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exploring Oracle SE & EE performance statistics with Orachrome Lighty.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-sql-monitoring-reports-in-flash-html-text",
      "database": "Oracle Database",
      "date": "2014-05-15",
      "employment_period": "dbi-services-2014",
      "title": "Oracle SQL Monitoring reports in flash, html, text",
      "url": "https://www.dbi-services.com/blog/oracle-sql-monitoring-reports-in-flash-html-text/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle SQL Monitoring reports in flash, html, text.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-extended-datatypes-better-than-clob",
      "database": "Oracle Database",
      "date": "2014-05-23",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12c extended datatypes better than CLOB?",
      "url": "https://www.dbi-services.com/blog/12c-extended-datatypes-better-than-clob/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better",
        "better side of comparison"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c extended datatypes better than CLOB?.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:poor-optimization-for-firstrows-in-exadata",
      "database": "Oracle Database",
      "date": "2014-05-28",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Exadata – poor optimization for FIRST_ROWS",
      "url": "https://www.dbi-services.com/blog/poor-optimization-for-firstrows-in-exadata/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 3,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "bad",
        "worse"
      ],
      "evidence_excerpt": "Shows a highly selective query on Exadata performing worse with a full SmartScan table scan than with a forced bad index access, because a first-rows-style stop-key plan still fully sorts and scans before limiting rows.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-system-schemas-vs-created-users",
      "database": "Oracle Database",
      "date": "2014-06-05",
      "employment_period": "dbi-services-2014",
      "title": "How to list all Oracle system schemas",
      "url": "https://www.dbi-services.com/blog/oracle-system-schemas-vs-created-users/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How to list all Oracle system schemas.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:linux-how-to-monitor-the-nproc-limit-1",
      "database": "Oracle Database",
      "date": "2014-06-10",
      "employment_period": "dbi-services-2014",
      "title": "Linux: how to monitor the nproc limit",
      "url": "https://www.dbi-services.com/blog/linux-how-to-monitor-the-nproc-limit-1/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "good",
        "recommended"
      ],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "clone() calls will return EAGAIN and that is reported by Oracle as: ORA-27300: OS system dependent operation:fork failed with status: 11 ORA-27301: OS failure message: Resource temporarily unavailable And that is clearly bad when it concerns an +ASM instance or archiver processes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:linux-how-to-monitor-the-nofiles-limit",
      "database": "Oracle Database",
      "date": "2014-06-18",
      "employment_period": "dbi-services-2014",
      "title": "Linux: how to monitor the nofile limit",
      "url": "https://www.dbi-services.com/blog/linux-how-to-monitor-the-nofiles-limit/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "good",
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Recommended values Currently this is what is set on Oracle linux 6 for 11gR2 (in /etc/security/limits.conf): oracle soft nofile 1024 oracle hard nofile 65536 For 12c, these are set in /etc/security/limits.d/oracle-rdbms-server-12cR1-preinstall.conf which overrides /etc/security/limits.conf: oracle soft nofile 1024 oracle hard nofile 65536 Do you think it’s a bit low?",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-parallel-query-are-you-doing-mapreduce-for-years-without-knowing-it",
      "database": "Oracle Database",
      "date": "2014-06-26",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Parallel Query: Did you use MapReduce for years without knowing it?",
      "url": "https://www.dbi-services.com/blog/oracle-parallel-query-are-you-doing-mapreduce-for-years-without-knowing-it/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Parallel Query: Did you use MapReduce for years without knowing it?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:partial-join-evaluation-in-oracle-12c",
      "database": "Oracle Database",
      "date": "2014-07-14",
      "employment_period": "dbi-services-2014",
      "title": "Partial Join Evaluation in Oracle 12c",
      "url": "https://www.dbi-services.com/blog/partial-join-evaluation-in-oracle-12c/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Partial Join Evaluation in Oracle 12c.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-em-agent-12c-thread-leak-on-rac",
      "database": "Oracle Database",
      "date": "2014-07-18",
      "employment_period": "dbi-services-2014",
      "title": "Oracle EM agent 12c thread leak on RAC",
      "url": "https://www.dbi-services.com/blog/oracle-em-agent-12c-thread-leak-on-rac/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle EM agent 12c thread leak on RAC.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pdb-media-failure-may-case-the-whole-cdb-to-crash",
      "database": "Oracle Database",
      "date": "2014-07-28",
      "employment_period": "dbi-services-2014",
      "title": "PDB media failure may cause the whole CDB to crash",
      "url": "https://www.dbi-services.com/blog/pdb-media-failure-may-case-the-whole-cdb-to-crash/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Ok the good news is that once the CDB is down, recovery is straightforward: Recovery Manager: Release 12.1.0.2.0 - Production on Mon Jul 27 21:36:22 2014 Copyright (c) 1982, 2014, Oracle and/or its affiliates.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12102-wait-event-histograms-in-s",
      "database": "Oracle Database",
      "date": "2014-08-04",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12.1.0.2: Wait event histograms in μs",
      "url": "https://www.dbi-services.com/blog/12102-wait-event-histograms-in-s/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12.1.0.2: Wait event histograms in μs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-121021-set-to-join-conversion",
      "database": "Oracle Database",
      "date": "2014-08-21",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12.1.0.2.1 Set to Join Conversion",
      "url": "https://www.dbi-services.com/blog/oracle-121021-set-to-join-conversion/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12.1.0.2.1 Set to Join Conversion.",
      "relation_aware": false
    },
    {
      "publication_id": "oracle-scene:a8a4c4aa-62",
      "database": "Oracle Database",
      "date": "2014-09-01",
      "employment_period": "dbi-services-2014",
      "title": "CBO Choice Between Index and Full Scan: The Good, the Bad and the Ugly Parameters",
      "url": "http://viewer.zmags.com/publication/a8a4c4aa#/a8a4c4aa/62",
      "source": "oracle-scene",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "CBO Choice Between Index and Full Scan: The Good, the Bad and the Ugly Parameters Traces Oracle optimizer costing from rule-based behavior to system statistics and explains why optimizer_index_cost_adj distorts index-versus-full-scan and adaptive join decisions.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:resize-your-oracle-datafiles-down-to-the-minimum-without-ora-03297",
      "database": "Oracle Database",
      "date": "2014-09-08",
      "employment_period": "dbi-services-2014",
      "title": "Resize your Oracle datafiles down to the minimum without ORA-03297",
      "url": "https://www.dbi-services.com/blog/resize-your-oracle-datafiles-down-to-the-minimum-without-ora-03297/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Resize your Oracle datafiles down to the minimum without ORA-03297.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-how-to-move-omf-datafiles-in-11g-and-12c",
      "database": "Oracle Database",
      "date": "2014-09-10",
      "employment_period": "dbi-services-2014",
      "title": "Oracle: How to move OMF datafiles in 11g and 12c",
      "url": "https://www.dbi-services.com/blog/oracle-how-to-move-omf-datafiles-in-11g-and-12c/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle: How to move OMF datafiles in 11g and 12c.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:do-you-use-oracle-enterprise-edition-features",
      "database": "Oracle Database",
      "date": "2014-09-16",
      "employment_period": "dbi-services-2014",
      "title": "Thinking about downgrading from Oracle Enterprise to Standard Edition?",
      "url": "https://www.dbi-services.com/blog/do-you-use-oracle-enterprise-edition-features/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Thinking about downgrading from Oracle Enterprise to Standard Edition?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:how-to-measure-exadata-smartscan-efficiency",
      "database": "Oracle Database",
      "date": "2014-09-23",
      "employment_period": "dbi-services-2014",
      "title": "How to measure Exadata SmartScan efficiency",
      "url": "https://www.dbi-services.com/blog/how-to-measure-exadata-smartscan-efficiency/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 6,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better",
        "efficient",
        "fast",
        "good",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Exadata still has the scalable architecture of the SAN, but releases the transfer bottleneck with offloading (in addition fo the fast interconnect which is very efficient).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:how-i-measure-oracle-index-fragmentation",
      "database": "Oracle Database",
      "date": "2014-10-13",
      "employment_period": "dbi-services-2014",
      "title": "How to measure Oracle index fragmentation",
      "url": "https://www.dbi-services.com/blog/how-i-measure-oracle-index-fragmentation/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How to measure Oracle index fragmentation.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-system-statistics-display-auxstats-with-calculated-values-and-formulas",
      "database": "Oracle Database",
      "date": "2014-10-15",
      "employment_period": "dbi-services-2014",
      "title": "Oracle system statistics: Display AUX_STATS$ with calculated values and formulas",
      "url": "https://www.dbi-services.com/blog/oracle-system-statistics-display-auxstats-with-calculated-values-and-formulas/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle system statistics: Display AUX_STATS$ with calculated values and formulas.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-iot-when-to-use-index-organized-tables",
      "database": "Oracle Database",
      "date": "2014-10-16",
      "employment_period": "dbi-services-2014",
      "title": "Oracle IOT: when to use Index Organized Tables",
      "url": "https://www.dbi-services.com/blog/oracle-iot-when-to-use-index-organized-tables/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle IOT: when to use Index Organized Tables.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:from-80-extended-rowid-to-12c-pluggable-db-or-why-oracle-database-is-still-a-great-software",
      "database": "Oracle Database",
      "date": "2014-10-24",
      "employment_period": "dbi-services-2014",
      "title": "From 8.0 extended rowid to 12c pluggable db: Why Oracle Database is still a great software",
      "url": "https://www.dbi-services.com/blog/from-80-extended-rowid-to-12c-pluggable-db-or-why-oracle-database-is-still-a-great-software/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "good",
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "From 8.0 extended rowid to 12c pluggable db: Why Oracle Database is still a great software.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-an-unexpected-lock-behaviour-with-rollback",
      "database": "Oracle Database",
      "date": "2014-10-26",
      "employment_period": "dbi-services-2014",
      "title": "Oracle: an unexpected lock behavior with rollback",
      "url": "https://www.dbi-services.com/blog/oracle-an-unexpected-lock-behaviour-with-rollback/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle: an unexpected lock behavior with rollback.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-cloud-control-sql-details-statistics",
      "database": "Oracle Database",
      "date": "2014-10-29",
      "employment_period": "dbi-services-2014",
      "title": "Oracle cloud control / SQL Details / Statistics",
      "url": "https://www.dbi-services.com/blog/oracle-cloud-control-sql-details-statistics/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle cloud control / SQL Details / Statistics.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-sql-profiles-check-what-they-do-before-accepting-them-blindly",
      "database": "Oracle Database",
      "date": "2014-11-07",
      "employment_period": "dbi-services-2014",
      "title": "Oracle SQL Profiles: Check what they do before accepting them blindly",
      "url": "https://www.dbi-services.com/blog/oracle-sql-profiles-check-what-they-do-before-accepting-them-blindly/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle SQL Profiles: Check what they do before accepting them blindly.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-sql-profile-why-multiple-optestimate",
      "database": "Oracle Database",
      "date": "2014-11-08",
      "employment_period": "dbi-services-2014",
      "title": "Oracle SQL Profile: why multiple OPT_ESTIMATE?",
      "url": "https://www.dbi-services.com/blog/oracle-sql-profile-why-multiple-optestimate/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle SQL Profile: why multiple OPT_ESTIMATE?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:awr-dont-store-explain-plan-predicates",
      "database": "Oracle Database",
      "date": "2014-11-11",
      "employment_period": "dbi-services-2014",
      "title": "AWR does not store explain plan predicates",
      "url": "https://www.dbi-services.com/blog/awr-dont-store-explain-plan-predicates/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "limitation",
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "Time for a Wish I wish that one day Oracle will release that limitation so that we can get predicate information from AWR (when in EE + Diagnostic Pack) and Statspack (SE and EE without option).",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:oracle-locks-identifiying-blocking-sessions",
      "database": "Oracle Database",
      "date": "2014-11-17",
      "employment_period": "dbi-services-2014",
      "title": "Oracle locks: Identifying blocking sessions",
      "url": "https://www.dbi-services.com/blog/oracle-locks-identifiying-blocking-sessions/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "More information about ROWID, relative file number and data object id in my previous post: From 8.0 extended rowid to 12c pluggable db: Why Oracle Database is still a great software",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-privilege-analysis-rocks",
      "database": "Oracle Database",
      "date": "2014-11-26",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12c privilege analysis rocks",
      "url": "https://www.dbi-services.com/blog/12c-privilege-analysis-rocks/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c privilege analysis rocks.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:when-oracle-resets-session-statistics",
      "database": "Oracle Database",
      "date": "2014-11-29",
      "employment_period": "dbi-services-2014",
      "title": "When Oracle resets session statistics",
      "url": "https://www.dbi-services.com/blog/when-oracle-resets-session-statistics/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "During our Oracle 12c New Features workshop I had a very good question about whether the session statistics are reset or not when doing ALTER SESSION SET CONTAINER.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12c-comparing-tts-with-noncdbtopdb",
      "database": "Oracle Database",
      "date": "2014-12-01",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12c: comparing TTS with noncdb_to_pdb",
      "url": "https://www.dbi-services.com/blog/oracle-12c-comparing-tts-with-noncdbtopdb/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c: comparing TTS with noncdb_to_pdb.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:can-we-disable-logging-for-dml",
      "database": "Oracle Database",
      "date": "2014-12-15",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12c: Can we disable logging for DML?",
      "url": "https://www.dbi-services.com/blog/can-we-disable-logging-for-dml/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c: Can we disable logging for DML?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-lateral-inline-view-cursor-expression-and-12c-implicit-statement-result",
      "database": "Oracle Database",
      "date": "2014-12-15",
      "employment_period": "dbi-services-2014",
      "title": "Oracle lateral inline view, cursor expression and 12c implicit statement result",
      "url": "https://www.dbi-services.com/blog/oracle-lateral-inline-view-cursor-expression-and-12c-implicit-statement-result/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle lateral inline view, cursor expression and 12c implicit statement result.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:create-schema-synonym-in-oracle-unsupported-feature",
      "database": "Oracle Database",
      "date": "2014-12-28",
      "employment_period": "dbi-services-2014",
      "title": "Creating a schema synonym in Oracle – an unsupported feature",
      "url": "https://www.dbi-services.com/blog/create-schema-synonym-in-oracle-unsupported-feature/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "unsupported"
      ],
      "evidence_excerpt": "Creating a schema synonym in Oracle – an unsupported feature.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-multitenant-dictionary-object-links",
      "database": "Oracle Database",
      "date": "2014-12-29",
      "employment_period": "dbi-services-2014",
      "title": "Oracle multitenant dictionary: object links",
      "url": "https://www.dbi-services.com/blog/oracle-multitenant-dictionary-object-links/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle multitenant dictionary: object links.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-multitenant-dictionary-metadata-links",
      "database": "Oracle Database",
      "date": "2015-01-05",
      "employment_period": "dbi-services-2014",
      "title": "Oracle multitenant dictionary: metadata links",
      "url": "https://www.dbi-services.com/blog/oracle-multitenant-dictionary-metadata-links/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle multitenant dictionary: metadata links.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-multitenant-dictionary-upgrade",
      "database": "Oracle Database",
      "date": "2015-01-05",
      "employment_period": "dbi-services-2014",
      "title": "Oracle multitenant dictionary: upgrade",
      "url": "https://www.dbi-services.com/blog/oracle-multitenant-dictionary-upgrade/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle multitenant dictionary: upgrade.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:insert-into-gtt-bulk-with-appendvalues",
      "database": "Oracle Database",
      "date": "2015-01-09",
      "employment_period": "dbi-services-2014",
      "title": "Insert into GTT: bulk with APPEND_VALUES",
      "url": "https://www.dbi-services.com/blog/insert-into-gtt-bulk-with-appendvalues/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "And Oracle does not offer an in memory temporary table as other RDBMS do.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:stay-with-non-cdb-or-go-to-cdb",
      "database": "Oracle Database",
      "date": "2015-01-28",
      "employment_period": "dbi-services-2014",
      "title": "Stay with non-CDB or go to CDB?",
      "url": "https://www.dbi-services.com/blog/stay-with-non-cdb-or-go-to-cdb/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle has made a lot of changes for that and maintaining different code path for the non-CDB and the CDB architecture cannot be efficient.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ioug-collaborate-c15lv",
      "database": "Oracle Database",
      "date": "2015-02-03",
      "employment_period": "dbi-services-2014",
      "title": "IOUG Collaborate #C15LV",
      "url": "https://www.dbi-services.com/blog/ioug-collaborate-c15lv/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The IOUG – Independant Oracle User Group – has a great event each year: the COLLABORATE.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-multitenant-dictionary-rowcache",
      "database": "Oracle Database",
      "date": "2015-02-08",
      "employment_period": "dbi-services-2014",
      "title": "Oracle multitenant dictionary: rowcache",
      "url": "https://www.dbi-services.com/blog/oracle-multitenant-dictionary-rowcache/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle multitenant dictionary: rowcache.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:never-gather-workload-stats-on-exadata",
      "database": "Oracle Database",
      "date": "2015-02-09",
      "employment_period": "dbi-services-2014",
      "title": "Never gather WORKLOAD stats on Exadata…",
      "url": "https://www.dbi-services.com/blog/never-gather-workload-stats-on-exadata/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "And direct-path read should be the main i/o path in Exadata as you probably bought that machine to benefit from SmartScan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:is-cdb-stable-now-after-one-patchset-and-two-psu",
      "database": "Oracle Database",
      "date": "2015-02-16",
      "employment_period": "dbi-services-2014",
      "title": "Is CDB stable after one patchset and two PSU?",
      "url": "https://www.dbi-services.com/blog/is-cdb-stable-now-after-one-patchset-and-two-psu/",
      "source": "dbi-services",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 4,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "System State dumped to trace file /u01/app/oracle/diag/rdbms/cdb/CDB/trace/CDB_diag_19090_20150219225154.trc ORA-1092 : opitsk aborting process 2015-02-19 22:52:00.067000 +01:00 Instance terminated by USER, pid = 19102 You can see the bug number in ‘bug fixed’ and the instance is still terminating after media failure on a PDB datafile.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-compression-availability-and-licensing",
      "database": "Oracle Database",
      "date": "2015-03-06",
      "employment_period": "dbi-services-2014",
      "title": "Oracle compression, availability and licensing",
      "url": "https://www.dbi-services.com/blog/oracle-compression-availability-and-licensing/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Probably a bug in catfusrg.sql but anyway you don’t need to buy license for that – just by your storage at Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:standard-edition-on-oracle-database-appliance",
      "database": "Oracle Database",
      "date": "2015-03-25",
      "employment_period": "dbi-services-2014",
      "title": "Standard Edition on Oracle Database Appliance",
      "url": "https://www.dbi-services.com/blog/standard-edition-on-oracle-database-appliance/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Standard Edition on Oracle Database Appliance.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:index-on-truncdate-do-you-still-need-old-index-1",
      "database": "Oracle Database",
      "date": "2015-03-27",
      "employment_period": "dbi-services-2014",
      "title": "Index on SUBSTR(string,1,n) – do you still need old index?",
      "url": "https://www.dbi-services.com/blog/index-on-truncdate-do-you-still-need-old-index-1/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Extends an earlier trunc-date finding to substring predicates, showing Oracle can use an index on the full string for range predicates on a substring prefix from 12.1.0.2 onward, without a separate index.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-tuning-silver-bullet-add-an-order-by-to-make-your-query-faster",
      "database": "Oracle Database",
      "date": "2015-04-01",
      "employment_period": "dbi-services-2014",
      "title": "Oracle tuning silver bullet: add an order by to make your query faster",
      "url": "https://www.dbi-services.com/blog/oracle-tuning-silver-bullet-add-an-order-by-to-make-your-query-faster/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle tuning silver bullet: add an order by to make your query faster.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rac-attack-was-another-great-success-at-c15lv",
      "database": "Oracle Database",
      "date": "2015-04-12",
      "employment_period": "dbi-services-2014",
      "title": "RAC Attack! was another great success at C15LV",
      "url": "https://www.dbi-services.com/blog/rac-attack-was-another-great-success-at-c15lv/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The organisation way excellent: Organisation by Ludovico Caldara, infrastructure by Erik Benner, food sponsored by OTN, and Oracle software made available on USB sticks thanks to Markus Michalewicz.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:variations-on-1m-insert-6-cpu-flame-graph",
      "database": "Oracle Database",
      "date": "2015-05-18",
      "employment_period": "dbi-services-2014",
      "title": "Variations on 1M insert (6): CPU Flame Graph",
      "url": "https://www.dbi-services.com/blog/variations-on-1m-insert-6-cpu-flame-graph/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Let’s look for it in ORACLE_HOME/rdbms/admin: $ grep -i \"package.*dbms_random\" $ORACLE_HOME/rdbms/admin/* /home/oracle/app/oracle/product/11204/rdbms/admin/dbmsrand.sql:CREATE OR REPLACE PACKAGE dbms_random AUTHID DEFINER AS /home/oracle/app/oracle/product/11204/rdbms/admin/dbmsrand.sql:CREATE OR REPLACE PACKAGE BODY dbms_random AS So, what is the difference between the 11.2.0.3 and 11.2.0.4 ?",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:variations-on-1m-rows-insert-1-bulk-insert",
      "database": "Oracle Database",
      "date": "2015-05-18",
      "employment_period": "dbi-services-2014",
      "title": "Variations on 1M rows insert (1): bulk insert",
      "url": "https://www.dbi-services.com/blog/variations-on-1m-rows-insert-1-bulk-insert/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Commit only at the end and we know that in Oracle it’s better not to commit too often.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:variations-on-1m-rows-insert-3-timesten",
      "database": "Oracle Database",
      "date": "2015-05-18",
      "employment_period": "dbi-services-2014",
      "title": "Variations on 1M rows insert (3): TimesTen",
      "url": "https://www.dbi-services.com/blog/variations-on-1m-rows-insert-3-timesten/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "faster",
        "good"
      ],
      "critical_signals": [
        "slower side of comparison"
      ],
      "evidence_excerpt": "When accepting the risk to have non durable commits the response time was faster on Oracle database because we don’t have to wait for persistence of commits.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:flame-graph-for-quick-identification-of-oracle-bug",
      "database": "Oracle Database",
      "date": "2015-06-12",
      "employment_period": "dbi-services-2014",
      "title": "Flame Graph for quick identification of Oracle bug",
      "url": "https://www.dbi-services.com/blog/flame-graph-for-quick-identification-of-oracle-bug/",
      "source": "dbi-services",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Flame Graph for quick identification of Oracle bug.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-memory-advisors-how-relevant",
      "database": "Oracle Database",
      "date": "2015-06-12",
      "employment_period": "dbi-services-2014",
      "title": "Oracle memory advisors: how relevant ?",
      "url": "https://www.dbi-services.com/blog/oracle-memory-advisors-how-relevant/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle memory advisors: how relevant ?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:multithreaded-12c-and-connect-as-sysdba",
      "database": "Oracle Database",
      "date": "2015-06-24",
      "employment_period": "dbi-services-2014",
      "title": "Multithreaded 12c and ‘connect / as sysdba’",
      "url": "https://www.dbi-services.com/blog/multithreaded-12c-and-connect-as-sysdba/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I want to connect locally (not through the listener) so I define a BEQ connection string: $ cat tnsnames.ora BEQ_DEMO11_SYS=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=/u01/app/oracle/product/12102EE/bin/oracle)(ARGV0=oracleDEMO11)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))')(ENVS='ORACLE_HOME=/u01/app/oracle/product/12102EE,ORACLE_SID=DEMO11')) Here is how a beaqueath (PROTOCOL=BEQ) connection is defined.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-database-cloud-service-my-first-trial",
      "database": "Oracle Database",
      "date": "2015-06-27",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Database Cloud Service – My first trial",
      "url": "https://www.dbi-services.com/blog/oracle-database-cloud-service-my-first-trial/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "From the cloud.oracle.com/database website, there is Trial only for the ‘Database Schema Service’ so I asked fot it, received an e-mail with connection info and it works: Good.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-log-writer-and-write-ahead-logging",
      "database": "Oracle Database",
      "date": "2015-06-28",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Log Writer and Write-Ahead-Logging",
      "url": "https://www.dbi-services.com/blog/oracle-log-writer-and-write-ahead-logging/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Log Writer and Write-Ahead-Logging.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:multitenant-vs-schema-based-consolidation",
      "database": "Oracle Database",
      "date": "2015-06-30",
      "employment_period": "dbi-services-2014",
      "title": "Multitenant vs. schema based consolidation",
      "url": "https://www.dbi-services.com/blog/multitenant-vs-schema-based-consolidation/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Patching the Oracle version for a single application backend is not possible Yes, plugging a PDB into a different version CDB can be faster for those applications that have lot of objects.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:configure-the-resource-manager-with-sql-developer",
      "database": "Oracle Database",
      "date": "2015-08-23",
      "employment_period": "dbi-services-2014",
      "title": "Configure the Resource Manager with SQL Developer",
      "url": "https://www.dbi-services.com/blog/configure-the-resource-manager-with-sql-developer/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows configuring Oracle Resource Manager consumer groups and CPU allocation methods through SQL Developer's DBA view in 12c, since dbconsole no longer exists and EM Express lacks that feature.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-database-cloud-service-dbaas",
      "database": "Oracle Database",
      "date": "2015-08-25",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Database Cloud Service – DBaaS",
      "url": "https://www.dbi-services.com/blog/oracle-database-cloud-service-dbaas/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database Cloud Service – DBaaS.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-cdc-for-datawarehouse-dbvisit-replicate-as-an-alternative",
      "database": "Oracle Database",
      "date": "2015-08-26",
      "employment_period": "dbi-services-2014",
      "title": "Oracle CDC for Datawarehouse, Dbvisit replicate as an alternative",
      "url": "https://www.dbi-services.com/blog/oracle-cdc-for-datawarehouse-dbvisit-replicate-as-an-alternative/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Notes that Oracle's built-in Change Data Capture and Streams are deprecated in favor of GoldenGate, proposing Dbvisit Replicate's redo-based logical replication as a lower-cost alternative for datawarehouse refresh.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-cloud-services-dbaas-and-dbi-services-best-practices",
      "database": "Oracle Database",
      "date": "2015-08-27",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Cloud Services DBaaS and dbi services best practices",
      "url": "https://www.dbi-services.com/blog/oracle-cloud-services-dbaas-and-dbi-services-best-practices/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Cloud Services DBaaS and dbi services best practices.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:scn-synchronization-in-distributed-transactions",
      "database": "Oracle Database",
      "date": "2015-08-27",
      "employment_period": "dbi-services-2014",
      "title": "SCN synchronization in distributed transactions",
      "url": "https://www.dbi-services.com/blog/scn-synchronization-in-distributed-transactions/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Explains that Oracle synchronizes SCNs across databases linked in a distributed transaction at each commit, advancing the lowest SCN to match the highest, useful for detecting unexpected db link usage.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:slob-in-the-cloud-how-to-check-cloud-services-performance",
      "database": "Oracle Database",
      "date": "2015-08-28",
      "employment_period": "dbi-services-2014",
      "title": "SLOB in the Cloud: how to check Cloud Services performance",
      "url": "https://www.dbi-services.com/blog/slob-in-the-cloud-how-to-check-cloud-services-performance/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "excellent",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "When it comes to Oracle databases there are 3 ways to test performances: Run an application, or a simulation of an application, such as the excellent SwingBench from Dominic Giles Run low-level calibration tools, such as Orion that simulate database, good when you have no database yet Or run something in the middle, and there is SLOB .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:database-cloud-service-performance-cpu",
      "database": "Oracle Database",
      "date": "2015-08-30",
      "employment_period": "dbi-services-2014",
      "title": "DataBase Cloud Service performance – CPU",
      "url": "https://www.dbi-services.com/blog/database-cloud-service-performance-cpu/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Now I have a good benchmark to check if this remains true when the Oracle Cloud Services will be more busy.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-standard-edition-two",
      "database": "Oracle Database",
      "date": "2015-09-02",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Standard Edition Two",
      "url": "https://www.dbi-services.com/blog/oracle-standard-edition-two/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "Patch 20831110 apply (pdb PDB): SUCCESS logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/20831110/18977826/20831110_apply_SE2_PDB_2015Sep01_21_28_11.log (no errors) SQL Patching tool complete on Tue Sep 1 21:28:17 2015 Thread limitation I’m on a VM with only 4 cores here.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:database-cloud-service-performance-network",
      "database": "Oracle Database",
      "date": "2015-09-13",
      "employment_period": "dbi-services-2014",
      "title": "DataBase Cloud Service performance – Network",
      "url": "https://www.dbi-services.com/blog/database-cloud-service-performance-network/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Sets up SSH port-forwarding of 1521 to reach an Oracle Database Cloud Service instance, measuring roughly 90ms latency from Switzerland to the Amsterdam region versus 240ms to the US region.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:do-you-use-sql-plan-baselines",
      "database": "Oracle Database",
      "date": "2015-09-25",
      "employment_period": "dbi-services-2014",
      "title": "Do you use SQL Plan Baselines?",
      "url": "https://www.dbi-services.com/blog/do-you-use-sql-plan-baselines/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But remember that Oracle has provided plan stability features for a long time, and they think we use it when they introduce all adaptive features.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-and-analytic-queries-before-in-memory-option",
      "database": "Oracle Database",
      "date": "2015-10-04",
      "employment_period": "dbi-services-2014",
      "title": "Oracle and Analytic Queries before In-Memory option",
      "url": "https://www.dbi-services.com/blog/oracle-and-analytic-queries-before-in-memory-option/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle and Analytic Queries before In-Memory option.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-in-memory-column-store-for-business-intelligence-at-swissbiday",
      "database": "Oracle Database",
      "date": "2015-10-06",
      "employment_period": "dbi-services-2014",
      "title": "Oracle In-Memory Column Store for Business Intelligence at #swissbiday",
      "url": "https://www.dbi-services.com/blog/oracle-in-memory-column-store-for-business-intelligence-at-swissbiday/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle In-Memory Column Store for Business Intelligence at #swissbiday.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:mapping-in-memory-cu-to-values-imcu-pruning",
      "database": "Oracle Database",
      "date": "2015-10-13",
      "employment_period": "dbi-services-2014",
      "title": "Mapping In-memory CU to values: IMCU pruning",
      "url": "https://www.dbi-services.com/blog/mapping-in-memory-cu-to-values-imcu-pruning/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses V$IM_COL_CU to show how each In-Memory Compression Unit stores per-column min and max values enabling IMCU pruning and skip filtering, similar in effect to Exadata Storage Indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:11-2-0-4-support-dont-worry-until-2017",
      "database": "Oracle Database",
      "date": "2015-10-16",
      "employment_period": "dbi-services-2014",
      "title": "11.2.0.4 support? Don’t worry until 2017",
      "url": "https://www.dbi-services.com/blog/11-2-0-4-support-dont-worry-until-2017/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Clarifies Oracle's premier, extended, and sustaining support tiers, confirming 11.2.0.4 keeps premier support at no extra cost until May 2017 without assuming it is more stable than 12.1.0.2.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-cloud-service-my-first-outage",
      "database": "Oracle Database",
      "date": "2015-10-18",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Cloud Service – my first outage",
      "url": "https://www.dbi-services.com/blog/oracle-cloud-service-my-first-outage/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Cloud Service – my first outage.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:you-are-in-standard-edition-when-to-worry",
      "database": "Oracle Database",
      "date": "2015-10-18",
      "employment_period": "dbi-services-2014",
      "title": "You are in Standard Edition, when to worry?",
      "url": "https://www.dbi-services.com/blog/you-are-in-standard-edition-when-to-worry/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle has very short sentences to define limitations that are not so easy to understand.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ibm-bluemix-database-cloud-service-my-first-trial",
      "database": "Db2",
      "date": "2015-10-31",
      "employment_period": "dbi-services-2014",
      "title": "IBM Bluemix Database Cloud Service – My first trial",
      "url": "https://www.dbi-services.com/blog/ibm-bluemix-database-cloud-service-my-first-trial/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Whatever the compatibility level is, and DB2 LUW 10 has very good compatibility when migrating from Oracle, you can’t move to another RDBMS whithout changing code.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ibm-bluemix-database-cloud-service-my-first-trial",
      "database": "Oracle Database",
      "date": "2015-10-31",
      "employment_period": "dbi-services-2014",
      "title": "IBM Bluemix Database Cloud Service – My first trial",
      "url": "https://www.dbi-services.com/blog/ibm-bluemix-database-cloud-service-my-first-trial/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "First hands-on trial of IBM Bluemix's SQL Database service, loading EMP and DEPT CSV exports from Oracle's SCOTT schema through the web console's default import options.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rman-channels-in-rac",
      "database": "Oracle Database",
      "date": "2015-11-05",
      "employment_period": "dbi-services-2014",
      "title": "RMAN channels in RAC",
      "url": "https://www.dbi-services.com/blog/rman-channels-in-rac/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains allocating RMAN channels across multiple RAC nodes to exceed a single node's HBA throughput ceiling against a 3GB/s XtremIO array, noting an unusual need to disable cell offload processing even off Exadata.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:interested-in-a-deep-dive-of-logical-replication",
      "database": "Oracle Database",
      "date": "2015-11-11",
      "employment_period": "dbi-services-2014",
      "title": "Interested in a deep dive of logical replication?",
      "url": "https://www.dbi-services.com/blog/interested-in-a-deep-dive-of-logical-replication/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Announces a hands-on RepAttack session at DOAG2015 where attendees install a Dbvisit Replicate trial with Oracle XE on their own laptop from a distributed USB stick, mirroring the RAC Attack format.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:cloud-control-12c-on-your-laptop",
      "database": "Oracle Database",
      "date": "2015-11-13",
      "employment_period": "dbi-services-2014",
      "title": "Cloud Control 12c on your laptop",
      "url": "https://www.dbi-services.com/blog/cloud-control-12c-on-your-laptop/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains downloading Oracle's prebuilt multi-file OVA for Enterprise Manager Cloud Control 12.1.0.5 with an 11.2.0.4 repository, concatenating the split ova parts before importing into VirtualBox.",
      "relation_aware": false
    },
    {
      "publication_id": "soug:SOUG_2015_ExadataSmartScan_Part1",
      "database": "Oracle Database",
      "date": "2015-12-11",
      "employment_period": "dbi-services-2014",
      "title": "Que gagneriez-vous en passant sur Exadata? Partie I - Mesurez l'activite eligible au SmartScan",
      "url": "https://www.soug.ch",
      "source": "soug",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "low",
      "summary_source": "title only",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Que gagneriez-vous en passant sur Exadata?",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ocm-12c-preparation-documentation",
      "database": "Oracle Database",
      "date": "2015-12-18",
      "employment_period": "dbi-services-2014",
      "title": "OCM 12c preparation: documentation",
      "url": "https://www.dbi-services.com/blog/ocm-12c-preparation-documentation/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "Maps each OCM 12c upgrade exam topic to the exact Oracle documentation book and chapter to search during the exam, since GUI tools may lack sufficient built-in help under exam conditions.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pdb-snapshot-copy-for-continuous-integration-testing",
      "database": "Oracle Database",
      "date": "2016-01-01",
      "employment_period": "dbi-services-2014",
      "title": "PDB snapshot copy for continuous integration testing",
      "url": "https://www.dbi-services.com/blog/pdb-snapshot-copy-for-continuous-integration-testing/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "You may find that expensive, but think about what it can bring you: you can provision multiple test environments and run your test in parallel, you same lot of storage, you can provision one database for each developer without a big overhead,… Cloud The Oracle cloud service is a good solution for those environments.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pdb-snapshot-using-dbms_dnfs-clonedb_renamefile",
      "database": "Oracle Database",
      "date": "2016-01-02",
      "employment_period": "dbi-services-2014",
      "title": "PDB Snapshot using dbms_dnfs.clonedb_renamefile",
      "url": "https://www.dbi-services.com/blog/pdb-snapshot-using-dbms_dnfs-clonedb_renamefile/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "So the only thing I have to do to start again is restore those small .cow files: 18:34:06 SQL> host tar -Pxvf /tmp/pdbcow.tar /u02/app/oracle/oradata/CDB/PDB/example01.dbf.cow /u02/app/oracle/oradata/CDB/PDB/SAMPLE_SCHEMA_users01.dbf.cow /u02/app/oracle/oradata/CDB/PDB/sysaux01.dbf.cow /u02/app/oracle/oradata/CDB/PDB/system01.dbf.cow 18:34:14 SQL> which is very fast, and it’s ready to start again with: create pluggab",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ofe-optimizer-features-enable",
      "database": "Oracle Database",
      "date": "2016-01-21",
      "employment_period": "dbi-services-2014",
      "title": "OFE – Optimizer Features Enable",
      "url": "https://www.dbi-services.com/blog/ofe-optimizer-features-enable/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Well in Oracle this idea is not only for the optimizer, you can also choose the compatible version for the database: store it compatible with a previous version.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:awrrpt-and-spreport-in-multitenant",
      "database": "Oracle Database",
      "date": "2016-01-27",
      "employment_period": "dbi-services-2014",
      "title": "awrrpt and spreport in multitenant",
      "url": "https://www.dbi-services.com/blog/awrrpt-and-spreport-in-multitenant/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Before going to the detail, I would like to say here that Oracle Midland is a great meetup.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-taboo-of-underscore-parameters",
      "database": "Oracle Database",
      "date": "2016-02-21",
      "employment_period": "dbi-services-2014",
      "title": "The taboo of ‘underscore parameters’",
      "url": "https://www.dbi-services.com/blog/the-taboo-of-underscore-parameters/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "There is also an excellent source of information about bugs encountered at Oracle customers, reasons, workarounds and fixes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:gtt-in-exadata-are-eligible-to-smartscan",
      "database": "Oracle Database",
      "date": "2016-03-07",
      "employment_period": "dbi-services-2014",
      "title": "GTT in Exadata are eligible to SmartScan",
      "url": "https://www.dbi-services.com/blog/gtt-in-exadata-are-eligible-to-smartscan/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "GTT in Exadata are eligible to SmartScan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-multitenant-pdb-spfile-parameters-for-standby-database",
      "database": "Oracle Database",
      "date": "2016-03-16",
      "employment_period": "dbi-services-2014",
      "title": "12c Multitenant: PDB spfile parameters for standby database",
      "url": "https://www.dbi-services.com/blog/12c-multitenant-pdb-spfile-parameters-for-standby-database/",
      "source": "dbi-services",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 6,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "SQL> select db_uniq_name,pdb_uid,sid,name,value$ from pdb_spfile$; DB_UNIQ PDB_UID SID NAME VALUE ------- ---------- --- -------------------------- ----- CDB_ADG 4058593923 * optimizer_dynamic_sampling 8 If I try it again, I’ll get a “ORA-32010: cannot find entry to delete in SPFILE” Bug This is a bug and I’ll put the bug number as soon as My Oracle Support engineer dares to reproduce that 3 lines test-case.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:how-to-check-multitenant-option-feature-usage",
      "database": "Oracle Database",
      "date": "2016-03-27",
      "employment_period": "dbi-services-2014",
      "title": "How to check Multitenant Option feature usage",
      "url": "https://www.dbi-services.com/blog/how-to-check-multitenant-option-feature-usage/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs DBMS_FEATURE_USAGE_INTERNAL.EXEC_DB_USAGE_SAMPLING manually and queries DBA_FEATURE_USAGE_STATISTICS to show even a single-tenant database records usage under 'Oracle Pluggable Databases'.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:cloning-a-pdb-to-the-oracle-cloud-service",
      "database": "Oracle Database",
      "date": "2016-03-30",
      "employment_period": "dbi-services-2014",
      "title": "Cloning a PDB to the Oracle Cloud Service",
      "url": "https://www.dbi-services.com/blog/cloning-a-pdb-to-the-oracle-cloud-service/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Cloning a PDB to the Oracle Cloud Service.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:creer-une-base-oracle-sur-le-cloud-en-quelques-clicks",
      "database": "Oracle Database",
      "date": "2016-04-03",
      "employment_period": "dbi-services-2014",
      "title": "Créer une base Oracle sur le Cloud en quelques clicks",
      "url": "https://www.dbi-services.com/blog/creer-une-base-oracle-sur-le-cloud-en-quelques-clicks/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Créer une base Oracle sur le Cloud en quelques clicks.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:lost-in-the-cloud-my-cloud-vs-my-services",
      "database": "Oracle Database",
      "date": "2016-04-03",
      "employment_period": "dbi-services-2014",
      "title": "Lost in the Cloud? My Cloud vs. My Services",
      "url": "https://www.dbi-services.com/blog/lost-in-the-cloud-my-cloud-vs-my-services/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distinguishes the Oracle Cloud 'My Account' company-level subscription dashboard from the 'My Services' administrator console used for provisioning and monitoring, and how to navigate between them.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:fixed-table-automatic-statistic-gathering-in-12c",
      "database": "Oracle Database",
      "date": "2016-04-04",
      "employment_period": "dbi-services-2014",
      "title": "Fixed table automatic statistic gathering in 12c",
      "url": "https://www.dbi-services.com/blog/fixed-table-automatic-statistic-gathering-in-12c/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Documentation First you may have a doubt because the Best Practices for Gathering Optimizer Statistics with Oracle Database 12c white paper, which is by the way excellent, states the following: The automatic statistics gathering job does not gather fixed object statistics.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:single-tenant-vs-non-cdb-no-reason-to-refuse-it",
      "database": "Oracle Database",
      "date": "2016-04-09",
      "employment_period": "dbi-services-2014",
      "title": "Single-Tenant vs. non-CDB: no reason to refuse it",
      "url": "https://www.dbi-services.com/blog/single-tenant-vs-non-cdb-no-reason-to-refuse-it/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Measures the extra datafile storage and process overhead of a single-tenant CDB against an equivalent non-CDB database on identical Oracle Cloud VMs to show the multitenant overhead is small.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:transparently-externalize-blob-to-bfile",
      "database": "Oracle Database",
      "date": "2016-04-12",
      "employment_period": "dbi-services-2014",
      "title": "Transparently externalize BLOB to BFILE",
      "url": "https://www.dbi-services.com/blog/transparently-externalize-blob-to-bfile/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "1 oracle oinstall 46156 Mar 25 17:20 adrci And here is my table: SQL> select id,filename,dbms_lob.getlength(doc),external_doc from DEMOTAB; ID FILENAME DBMS_LOB.GETLENGTH(DOC) EXTERNAL_DOC ---------- -------------------- ----------------------- ---------------------------------------- 1 acfsroot bfilename('DEMODIR', 'acfsroot') 2 adapters bfilename('DEMODIR', 'adapters') 3 adrci 46156 bfilename(NULL) You see that fir",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:a-short-glance-at-attunity-replicate",
      "database": "Oracle Database",
      "date": "2016-04-16",
      "employment_period": "dbi-services-2014",
      "title": "A short glance at Attunity replicate",
      "url": "https://www.dbi-services.com/blog/a-short-glance-at-attunity-replicate/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "When you have heterogeneous sources (not only Oracle) there is Oracle Golden Gate with very powerful possibilities, but maybe not an easy learning curve because of lack of simple GUI and setup wizard.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:io-performance-predictability-in-the-cloud",
      "database": "Oracle Database",
      "date": "2016-04-26",
      "employment_period": "dbi-services-2014",
      "title": "I/O Performance predictability in the Cloud",
      "url": "https://www.dbi-services.com/blog/io-performance-predictability-in-the-cloud/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows a SLOB workload on Oracle Cloud Service IO whose runtime unexpectedly grows past its fixed WORK_LOOP over several hours one Sunday, traced with ASH visualization to rising I/O latency.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:can-you-become-a-paas-provider-for-an-oracle-database-service",
      "database": "Oracle Database",
      "date": "2016-04-28",
      "employment_period": "dbi-services-2014",
      "title": "Can you become a PaaS provider for an Oracle Database service?",
      "url": "https://www.dbi-services.com/blog/can-you-become-a-paas-provider-for-an-oracle-database-service/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 16,
      "positive_signals": [
        "better",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Or even better: you want to provide an Oracle Database as a Service.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:testing-oracle-on-exoscale-ch",
      "database": "Oracle Database",
      "date": "2016-04-28",
      "employment_period": "dbi-services-2014",
      "title": "Testing Oracle on exoscale.ch",
      "url": "https://www.dbi-services.com/blog/testing-oracle-on-exoscale-ch/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Testing Oracle on exoscale.ch.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:data-guard-as-a-service",
      "database": "Oracle Database",
      "date": "2016-05-20",
      "employment_period": "dbi-services-2014",
      "title": "Data Guard as a Service",
      "url": "https://www.dbi-services.com/blog/data-guard-as-a-service/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows enabling the 'Standby Database with Data Guard' checkbox on Oracle Public Cloud DBaaS creation, provisioning two VMs and an automatically configured broker achieving SYNC transport.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:sys-password-on-oracle-cloud-service-managed-database",
      "database": "Oracle Database",
      "date": "2016-05-21",
      "employment_period": "dbi-services-2014",
      "title": "SYS password on Oracle Cloud Service managed database",
      "url": "https://www.dbi-services.com/blog/sys-password-on-oracle-cloud-service-managed-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SYS password on Oracle Cloud Service managed database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:which-patchset-for-12-1-0-2",
      "database": "Oracle Database",
      "date": "2016-05-24",
      "employment_period": "dbi-services-2014",
      "title": "Which patchset for 12.1.0.2 ?",
      "url": "https://www.dbi-services.com/blog/which-patchset-for-12-1-0-2/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This patchset provides the binaries to install the Standard Edition 2 of Oracle Database as: p21419221_121020_platform_3of10.zip and p21419221_121020_platform_4of10.zip This files are only for Standard Edition 2 as the other choice is grayed: However, Enterprise Edition is still available because all others files in this patchset 21419221 are the same as in the 17694377 so the installation of the Enterprise Edition o",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:db_flashback_retention_target-may-hang-your-database",
      "database": "Oracle Database",
      "date": "2016-05-26",
      "employment_period": "dbi-services-2014",
      "title": "DB_FLASHBACK_RETENTION_TARGET may hang your database",
      "url": "https://www.dbi-services.com/blog/db_flashback_retention_target-may-hang-your-database/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "************************************************************************ Thu May 26 07:43:01 2016 Errors in file /u01/app/oracle/diag/rdbms/cdb_02/CDB/trace/CDB_arc1_5612.trc: ORA-19809: limit exceeded for recovery files ORA-19804: cannot reclaim 1073741824 bytes disk space from 53687091200 limit Thu May 26 07:43:46 2016 This blocks the standby with a big gap and this may have bad consequence on primary availability ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-on-windows-server-core",
      "database": "Oracle Database",
      "date": "2016-06-10",
      "employment_period": "dbi-services-2014",
      "title": "Oracle on Windows Server Core",
      "url": "https://www.dbi-services.com/blog/oracle-on-windows-server-core/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle on Windows Server Core.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:large-pages-on-windows",
      "database": "Oracle Database",
      "date": "2016-06-16",
      "employment_period": "dbi-services-2014",
      "title": "Large Pages on Windows",
      "url": "https://www.dbi-services.com/blog/large-pages-on-windows/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows enabling ORA_LPENABLE at the instance level via Windows registry keys, stopping and restarting the Oracle service to confirm large pages apply without affecting a shared ASM instance.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-online-datafile-move-and-resize",
      "database": "Oracle Database",
      "date": "2016-06-18",
      "employment_period": "dbi-services-2014",
      "title": "12c online datafile move and resize",
      "url": "https://www.dbi-services.com/blog/12c-online-datafile-move-and-resize/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The move is continuing and at the point it reaches a block above the initial size the target file is resized: [oracle@CDB]$ ls -l /u0?/app/oracle/oradata/CDB/sysaux* -rw-r----- 1 oracle oinstall 19398664192 Jun 18 15:18 /u02/app/oracle/oradata/CDB/sysaux011460.dbf -rw-r----- 1 oracle oinstall 19398664192 Jun 18 15:18 /u03/app/oracle/oradata/CDB/sysaux014244.dbf And finally, the move is completed without any problem: ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oda-x6-2s-2m-for-ee-and-se",
      "database": "Oracle Database",
      "date": "2016-06-21",
      "employment_period": "dbi-services-2014",
      "title": "ODA X6-2S and ODA X6-2M for EE and SE2",
      "url": "https://www.dbi-services.com/blog/oda-x6-2s-2m-for-ee-and-se/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Announces the ODA X6-2S and X6-2M as the first Oracle Database Appliance models supporting Standard Edition 2 on dedicated hardware, aimed at customers previously limited to a Guest VM install.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:question-is-upgrade-now-to-12-1-0-2-or-wait-for-12-2",
      "database": "Oracle Database",
      "date": "2016-06-23",
      "employment_period": "dbi-services-2014",
      "title": "Question is: upgrade now to 12.1.0.2 or wait for 12.2 ?",
      "url": "https://www.dbi-services.com/blog/question-is-upgrade-now-to-12-1-0-2-or-wait-for-12-2/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "We will have to learn 12.2 features and test them before upgrading our databases, and the Oracle Public Cloud is good for that.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:compare-source-and-target-in-a-dbvisit-replication",
      "database": "Oracle Database",
      "date": "2016-07-05",
      "employment_period": "dbi-services-2014",
      "title": "Compare source and target in a Dbvisit replication",
      "url": "https://www.dbi-services.com/blog/compare-source-and-target-in-a-dbvisit-replication/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "If your target is not Oracle, then there are good chances that you cannot do that kind of ‘as of’ query which means that you need to lock the table on source for the time you compare.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-multitenant-feature-name",
      "database": "Oracle Database",
      "date": "2016-07-10",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Multitenant feature name",
      "url": "https://www.dbi-services.com/blog/oracle-multitenant-feature-name/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 2,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Well, if you look at the first patchset of 12 c R1, 12.1.0.2, you will see the old name ‘Oracle Pluggable Databases’ but this is a bug ( Patch 20718081 changes back the name).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:nulls-in-composite-keys",
      "database": "Oracle Database",
      "date": "2016-07-12",
      "employment_period": "dbi-services-2014",
      "title": "Nulls in composite keys",
      "url": "https://www.dbi-services.com/blog/nulls-in-composite-keys/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "More detail about the other match types in Oracle Development Guide .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-public-cloud-patch-conflict",
      "database": "Oracle Database",
      "date": "2016-07-13",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Public Cloud patch conflict",
      "url": "https://www.dbi-services.com/blog/oracle-public-cloud-patch-conflict/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Public Cloud patch conflict.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oda-x-6-log-file-sync-with-nvme-flash",
      "database": "Oracle Database",
      "date": "2016-07-21",
      "employment_period": "dbi-services-2014",
      "title": "ODA X-6 log file sync with NVMe flash",
      "url": "https://www.dbi-services.com/blog/oda-x-6-log-file-sync-with-nvme-flash/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is a great opportunity for small customers with few Oracle databases in Enterprise Edition or Standard Edition.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:redo-log-block-size-on-oda",
      "database": "Oracle Database",
      "date": "2016-07-22",
      "employment_period": "dbi-services-2014",
      "title": "Redo log block size on ODA X6 all flash",
      "url": "https://www.dbi-services.com/blog/redo-log-block-size-on-oda/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "On the Oracle Database Appliance, the redo logs are on Flash storage (and with X6 everything is on Flash storage) so you may wonder if we can benefit from 4k redo blocksize.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:large-pages-and-memory_target-on-windows",
      "database": "Oracle Database",
      "date": "2016-07-27",
      "employment_period": "dbi-services-2014",
      "title": "Large Pages and MEMORY_TARGET on Windows",
      "url": "https://www.dbi-services.com/blog/large-pages-and-memory_target-on-windows/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "benefit",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In Oracle, because of the threaded architecture, it’s not a requirement but in my opinion it’s still a good idea to differentiate those memory areas that are so different: SGA: one area allocated at startup, preferentially from large pages PGA: variable size areas allocated and de-allocated by sessions If you have more than few GB on your server, you should size SGA and PGA independently and benefit from large pages ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:exadata-x-5-bare-metal-vs-ovm",
      "database": "Oracle Database",
      "date": "2016-07-29",
      "employment_period": "dbi-services-2014",
      "title": "Exadata X-5 Bare Metal vs. OVM performance",
      "url": "https://www.dbi-services.com/blog/exadata-x-5-bare-metal-vs-ovm/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exadata X-5 Bare Metal vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-serializable-is-not-serializable",
      "database": "Oracle Database",
      "date": "2016-07-30",
      "employment_period": "dbi-services-2014",
      "title": "Oracle serializable is not serializable",
      "url": "https://www.dbi-services.com/blog/oracle-serializable-is-not-serializable/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle serializable is not serializable.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:exadata-x-5-bare-metal-vs-ovm-load-testing",
      "database": "Oracle Database",
      "date": "2016-07-31",
      "employment_period": "dbi-services-2014",
      "title": "Exadata X-5 Bare Metal vs. OVM load testing",
      "url": "https://www.dbi-services.com/blog/exadata-x-5-bare-metal-vs-ovm-load-testing/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exadata X-5 Bare Metal vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:unplugged-pluggable-databases",
      "database": "Oracle Database",
      "date": "2016-08-15",
      "employment_period": "dbi-services-2014",
      "title": "Unplugged pluggable databases",
      "url": "https://www.dbi-services.com/blog/unplugged-pluggable-databases/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Critiques the Oracle documentation's USB-stick illustration of pluggable databases, arguing CDB$ROOT, PDB$SEED and user PDBs are all containers plugged into the CDB, not into CDB$ROOT.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:audit_sys_operations-and-top-level-operation",
      "database": "Oracle Database",
      "date": "2016-08-23",
      "employment_period": "dbi-services-2014",
      "title": "AUDIT_SYS_OPERATIONS and top-level operation",
      "url": "https://www.dbi-services.com/blog/audit_sys_operations-and-top-level-operation/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The others have no terminal: [oracle@CDB adump]$ grep -l \"^CLIENT TERMINAL:\\[0\\]\" CDB_ora_*_20160823*aud | wc -l 8182 Expected feature It’s not a bug.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:multitenant-thin-provisioning-pdb-snapshots-on-acfs",
      "database": "Oracle Database",
      "date": "2016-09-06",
      "employment_period": "dbi-services-2014",
      "title": "Multitenant thin provisioning: PDB snapshots on ACFS",
      "url": "https://www.dbi-services.com/blog/multitenant-thin-provisioning-pdb-snapshots-on-acfs/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But then, storage vendors and other providers came with snapshots, compression and thin provisioning and Oracle had to answer: they implemented those storage features in ACFS and allowed database files on it.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-sql-new-feature-listagg-overflow",
      "database": "Oracle Database",
      "date": "2016-09-19",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2 SQL new feature: LISTAGG overflow",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-sql-new-feature-listagg-overflow/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2 SQL new feature: LISTAGG overflow.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-database-12-2-pdbaas",
      "database": "Oracle Database",
      "date": "2016-09-19",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Database 12.2 – PDBaaS",
      "url": "https://www.dbi-services.com/blog/oracle-database-12-2-pdbaas/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database 12.2 – PDBaaS.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-long-identifiers",
      "database": "Oracle Database",
      "date": "2016-09-20",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2 Long Identifiers",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-long-identifiers/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2 Long Identifiers.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-optimizer-adaptive-statistics",
      "database": "Oracle Database",
      "date": "2016-09-20",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2 Optimizer Adaptive Statistics",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-optimizer-adaptive-statistics/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Of course, Oracle product managers listen to feedbacks, ensure to provide workarounds or fixes and make things better for next release.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ravello",
      "database": "Oracle Database",
      "date": "2016-09-20",
      "employment_period": "dbi-services-2014",
      "title": "Ravello",
      "url": "https://www.dbi-services.com/blog/ravello/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Describes Ravello, acquired by Oracle earlier that year, as a nested-virtualization layer that imports VMware VM ecosystems and reproduces their private network, including original IP addresses.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:modern-software-architecture-what-is-a-database",
      "database": "Oracle Database",
      "date": "2016-09-24",
      "employment_period": "dbi-services-2014",
      "title": "Modern software architecture – what is a database?",
      "url": "https://www.dbi-services.com/blog/modern-software-architecture-what-is-a-database/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "excellent",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You have begin – exception – end blocks, you declare all variables, you can be modular with procedures and inline procedures, you separate signature and body, you have very good IDE, excellent debugger and easy profiler,… and you can run it on Oracle XE which is free.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-is_rolling_invalid-in-vsql",
      "database": "Oracle Database",
      "date": "2016-09-25",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: IS_ROLLING_INVALID in V$SQL",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-is_rolling_invalid-in-vsql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2: IS_ROLLING_INVALID in V$SQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-ddl-deferred-invalidation",
      "database": "Oracle Database",
      "date": "2016-10-02",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: DDL deferred invalidation",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-ddl-deferred-invalidation/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2: DDL deferred invalidation.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-online-move-datafile-in-same-filesystem",
      "database": "Oracle Database",
      "date": "2016-11-02",
      "employment_period": "dbi-services-2014",
      "title": "12c online move datafile in same filesystem.",
      "url": "https://www.dbi-services.com/blog/12c-online-move-datafile-in-same-filesystem/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Uses strace to contrast a plain Linux 'mv' within a filesystem, a fast rename() with no copy, against Oracle's 12c online datafile move, which always physically copies even on the same filesystem.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-public-cloud-create-a-database-from-command-line",
      "database": "Oracle Database",
      "date": "2016-11-07",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Public Cloud: create a database from command line",
      "url": "https://www.dbi-services.com/blog/oracle-public-cloud-create-a-database-from-command-line/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Public Cloud: create a database from command line.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-multitenant-local-undo",
      "database": "Oracle Database",
      "date": "2016-11-08",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2 multitenant: Local UNDO",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-multitenant-local-undo/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2 multitenant: Local UNDO.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-plsql-new-feature-tnsping-from-the-database",
      "database": "Oracle Database",
      "date": "2016-11-08",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2 PL/SQL new feature: TNSPING from the database",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-plsql-new-feature-tnsping-from-the-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2 PL/SQL new feature: TNSPING from the database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-has-new-sqlplus-features",
      "database": "Oracle Database",
      "date": "2016-11-11",
      "employment_period": "dbi-services-2014",
      "title": "12cR2 has new SQL*Plus features",
      "url": "https://www.dbi-services.com/blog/12cr2-has-new-sqlplus-features/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Let set which settings are different: [oracle@OPC122 ~]$ sqlplus -s / as sysdba <<< \"store set a.txt replace\" Wrote file a.txt [oracle@OPC122 ~]$ sqlplus -s -F / as sysdba <<< \"store set b.txt replace\" Wrote file b.txt [oracle@OPC122 ~]$ diff a.txt b.txt 3c3 set arraysize 100 31c31 set lobprefetch 16384 46c46 set rowprefetch 2 59c59 set statementcache 20 Those settings avoid roundtrips and unnecessary work.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-max_pdbs",
      "database": "Oracle Database",
      "date": "2016-11-11",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: MAX_PDBS",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-max_pdbs/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 3,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "bad",
        "bug"
      ],
      "evidence_excerpt": "12:18:28 SQL> create pluggable database PDB1 admin user pdbadmin identified by oracle; create pluggable database PDB1 admin user pdbadmin identified by oracle * ERROR at line 1: ORA-65010: maximum number of pluggable databases created Probably a small bug there.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-pluggable-database-relocation",
      "database": "Oracle Database",
      "date": "2016-11-11",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: Pluggable database relocation",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-pluggable-database-relocation/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "23:41:14 (opc1)CDB1 SQL> commit; ERROR: ORA-03114: not connected to ORACLE It’s a good occasion to look at the traces.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-single-tenant-multitenant-features-for-all-editions",
      "database": "Oracle Database",
      "date": "2016-11-14",
      "employment_period": "dbi-services-2014",
      "title": "12cR2 Single-Tenant: Multitenant Features for All Editions",
      "url": "https://www.dbi-services.com/blog/12cr2-single-tenant-multitenant-features-for-all-editions/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shares Oracle Open World slides arguing that since non-CDB is deprecated, Single-Tenant still brings dictionary separation, PDB cloning, and metadata links to editions without the option.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-upgrade-by-unplugplug-in-the-oracle-cloud-service",
      "database": "Oracle Database",
      "date": "2016-11-19",
      "employment_period": "dbi-services-2014",
      "title": "12cR2: Upgrade by unplug/plug in the Oracle Cloud Service",
      "url": "https://www.dbi-services.com/blog/12cr2-upgrade-by-unplugplug-in-the-oracle-cloud-service/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "12cR2: Upgrade by unplug/plug in the Oracle Cloud Service.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:encryption-in-oracle-public-cloud",
      "database": "Oracle Database",
      "date": "2016-11-29",
      "employment_period": "dbi-services-2014",
      "title": "Encryption in Oracle Public Cloud",
      "url": "https://www.dbi-services.com/blog/encryption-in-oracle-public-cloud/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "This parameter has been introduced in 12.2 and has been backported to 11.2.0.4 and 12.1.0.2 with bug 21281607 that is applied on any Oracle Public Cloud DBaaS instance.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:histograms-on-character-strings-between-11-2-0-3-and-11-2-0-4",
      "database": "Oracle Database",
      "date": "2016-11-30",
      "employment_period": "dbi-services-2014",
      "title": "Histograms on character strings between 11.2.0.3 and 11.2.0.4",
      "url": "https://www.dbi-services.com/blog/histograms-on-character-strings-between-11-2-0-3-and-11-2-0-4/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database has lot of ways to understand what happens, from the debugging tools provided with the software, and from the excellent literature about it.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-statistics-advisor",
      "database": "Oracle Database",
      "date": "2016-12-07",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: Statistics Advisor",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-statistics-advisor/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2: Statistics Advisor.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-database-12c-release-2-multitenant-oracle-press",
      "database": "Oracle Database",
      "date": "2016-12-14",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Database 12c Release 2 Multitenant (Oracle Press)",
      "url": "https://www.dbi-services.com/blog/oracle-database-12c-release-2-multitenant-oracle-press/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "great",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In addition to that, Oracle Press asked to Arup Nanda to do an additional review which was great because Arup has experience about book writing.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-awr-views-in-multitenant",
      "database": "Oracle Database",
      "date": "2016-12-19",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: AWR views in multitenant",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-awr-views-in-multitenant/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2: AWR views in multitenant.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-no-cardinality-feedback-for-small-queries",
      "database": "Oracle Database",
      "date": "2017-01-05",
      "employment_period": "dbi-services-2014",
      "title": "12cR2: no cardinality feedback for small queries",
      "url": "https://www.dbi-services.com/blog/12cr2-no-cardinality-feedback-for-small-queries/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 2,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Uses strings against the oracle binary to trace bug 23596611, which bypasses 12c cardinality feedback re-optimization for queries classified internally as 'small', a change not yet documented.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:exadata-express-cloud-service-pdb_admin-privileges",
      "database": "Oracle Database",
      "date": "2017-01-24",
      "employment_period": "dbi-services-2014",
      "title": "Exadata Express Cloud Service: PDB_ADMIN privileges",
      "url": "https://www.dbi-services.com/blog/exadata-express-cloud-service-pdb_admin-privileges/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exadata Express Cloud Service: PDB_ADMIN privileges.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-core-factor-and-non-oracle-cloud",
      "database": "Oracle Database",
      "date": "2017-01-30",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Core factor and Oracle or non-Oracle Cloud",
      "url": "https://www.dbi-services.com/blog/oracle-core-factor-and-non-oracle-cloud/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 2,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "The combination of core factor and virtualisation rules clearly disadvantages all competitors: IBM LPAR virtualisation is accepted, but IBM POWER core factor makes the database 2x more expensive than on processors you find in Oracle hardware (Intel, SPARC) Most data center run on VMWare ESX with 0.5 core factor Intel, but counting vCPU is not accepted and the whole datacenter may have to be licenced We are allowed to",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:amazon-aws-instances-and-oracle-database-performance",
      "database": "Oracle Database",
      "date": "2017-02-01",
      "employment_period": "dbi-services-2014",
      "title": "Amazon AWS instances and Oracle database performance",
      "url": "https://www.dbi-services.com/blog/amazon-aws-instances-and-oracle-database-performance/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Installing Oracle from an ORACLE_HOME clone is also very fast and creating a database with SLOB create_database_kit is easy.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:running-slob-on-exadata-express-cloud-service",
      "database": "Oracle Database",
      "date": "2017-02-01",
      "employment_period": "dbi-services-2014",
      "title": "Running SLOB on Exadata Express Cloud Service",
      "url": "https://www.dbi-services.com/blog/running-slob-on-exadata-express-cloud-service/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Running SLOB on Exadata Express Cloud Service.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:exadata-express-cloud-service-max_pdb_storage",
      "database": "Oracle Database",
      "date": "2017-02-03",
      "employment_period": "dbi-services-2014",
      "title": "Exadata Express Cloud Service: MAX_PDB_STORAGE",
      "url": "https://www.dbi-services.com/blog/exadata-express-cloud-service-max_pdb_storage/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exadata Express Cloud Service: MAX_PDB_STORAGE.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-public-cloud-12cr2-tde-is-not-an-option",
      "database": "Oracle Database",
      "date": "2017-02-05",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Public Cloud 12cR2: TDE is not an option",
      "url": "https://www.dbi-services.com/blog/oracle-public-cloud-12cr2-tde-is-not-an-option/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Public Cloud 12cR2: TDE is not an option.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:exadata-express-cloud-service-sql-and-optimizer-trace",
      "database": "Oracle Database",
      "date": "2017-02-06",
      "employment_period": "dbi-services-2014",
      "title": "Exadata Express Cloud Service: SQL and Optimizer trace",
      "url": "https://www.dbi-services.com/blog/exadata-express-cloud-service-sql-and-optimizer-trace/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exadata Express Cloud Service: SQL and Optimizer trace.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-public-cloud-2-ocpu-for-1-proc-license",
      "database": "Oracle Database",
      "date": "2017-02-08",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Public Cloud: 2 OCPU for 1 proc. license",
      "url": "https://www.dbi-services.com/blog/oracle-public-cloud-2-ocpu-for-1-proc-license/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "fast",
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "And then, in order to optimize your Oracle licences, you need to choose the instance type that can run faster on less cores.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-public-cloud-liops-with-4-ocpu-in-paas",
      "database": "Oracle Database",
      "date": "2017-02-10",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Public Cloud: LIOPS with 4 OCPU in PaaS",
      "url": "https://www.dbi-services.com/blog/oracle-public-cloud-liops-with-4-ocpu-in-paas/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Public Cloud: LIOPS with 4 OCPU in PaaS.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-dbca-can-create-a-standby-database",
      "database": "Oracle Database",
      "date": "2017-02-12",
      "employment_period": "dbi-services-2014",
      "title": "12cR2 DBCA can create a standby database",
      "url": "https://www.dbi-services.com/blog/12cr2-dbca-can-create-a-standby-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This evolves in 12.2 with a new option in DBCA to do that: dbca -silent -createDuplicateDB -createAsStandby Limitations I’ve tried in the Oracle Public Cloud where I just created a RAC database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-real-time-materialized-view-on-query-computation",
      "database": "Oracle Database",
      "date": "2017-02-17",
      "employment_period": "dbi-services-2014",
      "title": "12cR2 real-time materialized view (on query computation)",
      "url": "https://www.dbi-services.com/blog/12cr2-real-time-materialized-view-on-query-computation/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database 12.2 goes a step further being able to deliver fresh result even when the materialized is stale.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-online-tablespace-encryption",
      "database": "Oracle Database",
      "date": "2017-02-26",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: Online tablespace encryption",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-online-tablespace-encryption/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2: Online tablespace encryption.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-changes-for-login-sql",
      "database": "Oracle Database",
      "date": "2017-03-07",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: changes for login.sql",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-changes-for-login-sql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2: changes for login.sql.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-rac-cloud-acfs-pdb-thin-clones-and-asmadmin",
      "database": "Oracle Database",
      "date": "2017-03-09",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2, RAC, Cloud, ACFS, PDB thin clones and asmadmin",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-rac-cloud-acfs-pdb-thin-clones-and-asmadmin/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In the Oracle Public Cloud, fast provisioning gets all its meaning when creating a RAC database service: in one hour you can get an operational highly available multitenant database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:google-cloud-platform-instances-and-oracle-database-performance",
      "database": "Oracle Database",
      "date": "2017-03-12",
      "employment_period": "dbi-services-2014",
      "title": "Google Cloud Platform instances and Oracle Database",
      "url": "https://www.dbi-services.com/blog/google-cloud-platform-instances-and-oracle-database-performance/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Google Cloud Platform instances and Oracle Database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:google-cloud-platform-instances-and-oracle-database-performance",
      "database": "PostgreSQL",
      "date": "2017-03-12",
      "employment_period": "dbi-services-2014",
      "title": "Google Cloud Platform instances and Oracle Database",
      "url": "https://www.dbi-services.com/blog/google-cloud-platform-instances-and-oracle-database-performance/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The Google Cloud Platform looks good and I’ll probably use my Google Cloud trial to test Spanner, and maybe the new PostgreSQL service.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-on-windows-virtual-accounts",
      "database": "Oracle Database",
      "date": "2017-03-16",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2 on Windows: Virtual Accounts",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-on-windows-virtual-accounts/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good",
        "recommended",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Explains Windows 2008 R2's Virtual Accounts as a new install-time option for the process running Oracle 12.2, avoiding the password-management overhead of the 12.1 Oracle Home User.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:jan17-proactive-bundle-patch-adaptive-statistics-control",
      "database": "Oracle Database",
      "date": "2017-03-27",
      "employment_period": "dbi-services-2014",
      "title": "JAN17 Proactive Bundle Patch + Adaptive Statistics control",
      "url": "https://www.dbi-services.com/blog/jan17-proactive-bundle-patch-adaptive-statistics-control/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "If you have to create a new database now (I’m writing this in March 2017) for a migration of OLTP database with minimal risks of regression, I would recommend: The latest patchset of Oracle Database 12cR1 The latest Proactive Bundle Patch The two patches to get full control over Adaptive statistics This post gives more detail about it and which patches to apply.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-dbca-automatic-memory-management-and-databasetype",
      "database": "Oracle Database",
      "date": "2017-04-03",
      "employment_period": "dbi-services-2014",
      "title": "12cR2 DBCA, Automatic Memory Management, and -databaseType",
      "url": "https://www.dbi-services.com/blog/12cr2-dbca-automatic-memory-management-and-databasetype/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Then why not start with what is recommended by Oracle?",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:service-696c6f76656d756c746974656e616e74-has-1-instances",
      "database": "Oracle Database",
      "date": "2017-04-08",
      "employment_period": "dbi-services-2014",
      "title": "Service “696c6f76656d756c746974656e616e74” has 1 instance(s).",
      "url": "https://www.dbi-services.com/blog/service-696c6f76656d756c746974656e616e74-has-1-instances/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Let’s try to connect to it: SQL> connect sys/oracle@(DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=4aa269fa927779f0e053684ea8c0c27f))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.78.104)(PORT=1521))) as sysdba Connected.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:listener-and-virtual-ip",
      "database": "Oracle Database",
      "date": "2017-04-25",
      "employment_period": "dbi-services-2014",
      "title": "Listener and Virtual IP",
      "url": "https://www.dbi-services.com/blog/listener-and-virtual-ip/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The reason is that when the host specified in the listener.ora resolves to the same IP address as the hostname of the server, then Oracle listener binds the port on all interfaces, and this includes the VIP.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:random-ora-01017-invalid-usernamepassword-in-12cr2",
      "database": "Oracle Database",
      "date": "2017-05-16",
      "employment_period": "dbi-services-2014",
      "title": "random “ORA-01017: invalid username/password” in 12cR2",
      "url": "https://www.dbi-services.com/blog/random-ora-01017-invalid-usernamepassword-in-12cr2/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here, Oracle is opening /dev/random in non-blocking mode which is good because it does not wait.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-needs-to-connect-with-password-for-cross-pdb-dml",
      "database": "Oracle Database",
      "date": "2017-05-26",
      "employment_period": "dbi-services-2014",
      "title": "12cR2 needs to connect with password for Cross-PDB DML",
      "url": "https://www.dbi-services.com/blog/12cr2-needs-to-connect-with-password-for-cross-pdb-dml/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Then, I provide the user/password but with local connection (no service name): SQL> connect sys/oracle as sysdba Connected.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12cr2-exchange-partition-deferred-invalidation",
      "database": "Oracle Database",
      "date": "2017-05-29",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 12cR2: exchange partition deferred invalidation",
      "url": "https://www.dbi-services.com/blog/oracle-12cr2-exchange-partition-deferred-invalidation/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2: exchange partition deferred invalidation.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:new-release-model-for-jul17-ru-and-rur",
      "database": "Oracle Database",
      "date": "2017-05-30",
      "employment_period": "dbi-services-2014",
      "title": "New release model for JUL17 (or Oracle 17.3): RU and RUR",
      "url": "https://www.dbi-services.com/blog/new-release-model-for-jul17-ru-and-rur/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Tracks evolving rumors and confirmed bug references to predict the version number and release date of Oracle's new annual Release Update model ahead of its official announcement.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-nssn-process-for-data-guard-sync-transport",
      "database": "Oracle Database",
      "date": "2017-06-15",
      "employment_period": "dbi-services-2014",
      "title": "12c NSSn process for Data Guard SYNC transport",
      "url": "https://www.dbi-services.com/blog/12c-nssn-process-for-data-guard-sync-transport/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here is my configuration with two physical standby: DGMGRL> show configuration Configuration - orcl Protection Mode: MaxPerformance Members: orcla - Primary database orclb - Physical standby database orclc - Physical standby database Fast-Start Failover: DISABLED Configuration Status: SUCCESS (status updated 56 seconds ago) Both are in SYNC: DGMGRL> show database orclb logxptmode; LogXptMode = 'sync' DGMGRL> show dat",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oda-x6-installation-re-image",
      "database": "Oracle Database",
      "date": "2017-06-28",
      "employment_period": "dbi-services-2014",
      "title": "ODA X6 installation: re-image",
      "url": "https://www.dbi-services.com/blog/oda-x6-installation-re-image/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Gives a cheat sheet for re-imaging a freshly racked Oracle Database Appliance through the ILOM management network interface before the public network is configured.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-vii",
      "database": "Oracle Database",
      "date": "2017-07-31",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths VII – Bitmap Index Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-vii/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "Look for index_pages_fetched in costsize.c When clustering factor is bad, Oracle prefers to do a full table scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-vii",
      "database": "PostgreSQL",
      "date": "2017-07-31",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths VII – Bitmap Index Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-vii/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-unique-constraint",
      "database": "Oracle Database",
      "date": "2017-08-01",
      "employment_period": "dbi-services-2014",
      "title": "Postgres unique constraint",
      "url": "https://www.dbi-services.com/blog/postgres-unique-constraint/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The Postgres community is very responsive, especially when we may think that something works better in Oracle than Postgres (which was not the case here and which was not the goal of my tweet anyway – but tweets are short and may not express the tone properly).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-unique-constraint",
      "database": "PostgreSQL",
      "date": "2017-08-01",
      "employment_period": "dbi-services-2014",
      "title": "Postgres unique constraint",
      "url": "https://www.dbi-services.com/blog/postgres-unique-constraint/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "They are similar in Postgres and here is the solution proposed: alter table demo drop constraint demo_pk; ALTER TABLE alter table demo add constraint demo_pk primary key(n) deferrable initially deferred; ALTER TABLE begin transaction; BEGIN update demo set n=n-1; UPDATE 2 select * from demo; n --- 0 1 (2 rows) update demo set n=n+1; UPDATE 2 That seems good.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-0",
      "database": "Oracle Database",
      "date": "2017-08-01",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths – intro",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-0/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths – intro.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-0",
      "database": "PostgreSQL",
      "date": "2017-08-01",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths – intro",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-0/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-i",
      "database": "Oracle Database",
      "date": "2017-08-01",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths I – Seq Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-i/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths I – Seq Scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-i",
      "database": "PostgreSQL",
      "date": "2017-08-01",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths I – Seq Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-i/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-on-cygwin",
      "database": "PostgreSQL",
      "date": "2017-08-01",
      "employment_period": "dbi-services-2014",
      "title": "PostgreSQL on Cygwin",
      "url": "https://www.dbi-services.com/blog/postgresql-on-cygwin/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL on Cygwin.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-cloud-script-to-stop-all-paas-services",
      "database": "Oracle Database",
      "date": "2017-08-02",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Cloud: script to stop all PaaS services",
      "url": "https://www.dbi-services.com/blog/oracle-cloud-script-to-stop-all-paas-services/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Provides a curl-and-jq shell script against the Oracle Cloud REST API that queries all non-stopped PaaS service instances and stops them, useful for cutting metered cloud costs overnight.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-ii",
      "database": "Oracle Database",
      "date": "2017-08-02",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths II – Index Only Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-ii/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle can read indexes with INDEX FAST FULL SCAN in the same way it reads table with FULL TABLE SCAN: with larger I/O.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-ii",
      "database": "PostgreSQL",
      "date": "2017-08-02",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths II – Index Only Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-ii/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Both Oracle and Postgres use MVCC which is great because you can have transactions and queries on the same database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-iii",
      "database": "Oracle Database",
      "date": "2017-08-03",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths III – Partial Index",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-iii/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths III – Partial Index.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-iii",
      "database": "PostgreSQL",
      "date": "2017-08-03",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths III – Partial Index",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-iii/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:exadata-capacity-on-demand-and-elastic-rack",
      "database": "Oracle Database",
      "date": "2017-08-04",
      "employment_period": "dbi-services-2014",
      "title": "Exadata Capacity on Demand and Elastic Rack",
      "url": "https://www.dbi-services.com/blog/exadata-capacity-on-demand-and-elastic-rack/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exadata Capacity on Demand and Elastic Rack.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-iv",
      "database": "Oracle Database",
      "date": "2017-08-05",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths IV – Order By and Index",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-iv/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle has INDEX FAST FULL SCAN which is the fastest, reading blocks sequentially as they come.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-iv",
      "database": "PostgreSQL",
      "date": "2017-08-05",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths IV – Order By and Index",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-iv/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-v",
      "database": "Oracle Database",
      "date": "2017-08-08",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths V – FIRST ROWS and MIN/MAX",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-v/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths V – FIRST ROWS and MIN/MAX.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-v",
      "database": "PostgreSQL",
      "date": "2017-08-08",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths V – FIRST ROWS and MIN/MAX",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-v/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "advantage",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Basically, both Oracle and Postgres take advantage of the index structure to get the minimum – or first value – from the sorted index entries.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-vi",
      "database": "Oracle Database",
      "date": "2017-08-09",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths VI – Index Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-vi/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths VI – Index Scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-vi",
      "database": "PostgreSQL",
      "date": "2017-08-09",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths VI – Index Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-vi/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "At the end, because I have an index with good clustering factor, and because I’m using the defaults on Linux without direct read and asynchronous I/O, the execution is very similar to the postgres one: read the few index blocks and follow the pointer to the 140 blocks of the table.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-viii",
      "database": "Oracle Database",
      "date": "2017-08-20",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths VIII – Index Scan and Filter",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-viii/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths VIII – Index Scan and Filter.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-viii",
      "database": "PostgreSQL",
      "date": "2017-08-20",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths VIII – Index Scan and Filter",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-viii/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-ix",
      "database": "Oracle Database",
      "date": "2017-08-23",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths IX – Tid Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-ix/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths IX – Tid Scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-ix",
      "database": "PostgreSQL",
      "date": "2017-08-23",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths IX – Tid Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-ix/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-x-update",
      "database": "Oracle Database",
      "date": "2017-08-24",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths X – Update",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-x-update/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths X – Update.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-x-update",
      "database": "PostgreSQL",
      "date": "2017-08-24",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths X – Update",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-x-update/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-xi",
      "database": "Oracle Database",
      "date": "2017-08-26",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths XI – Sample Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-xi/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle access paths XI – Sample Scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-vs-oracle-access-paths-xi",
      "database": "PostgreSQL",
      "date": "2017-08-26",
      "employment_period": "dbi-services-2014",
      "title": "Postgres vs. Oracle access paths XI – Sample Scan",
      "url": "https://www.dbi-services.com/blog/postgres-vs-oracle-access-paths-xi/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "drawback",
        "slower side of comparison"
      ],
      "evidence_excerpt": "This is faster than the Postgres approach, but the drawback is that the result is not exact: 478 rows were returned here.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:create-constraints-in-your-datawarehouse-why-and-how",
      "database": "Oracle Database",
      "date": "2017-09-08",
      "employment_period": "dbi-services-2014",
      "title": "Create constraints in your datawarehouse – why and how",
      "url": "https://www.dbi-services.com/blog/create-constraints-in-your-datawarehouse-why-and-how/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "We know that all rows in the fact table have a matching row in each dimension, but Oracle doesn’t know that.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:when-deterministic-function-is-not",
      "database": "Oracle Database",
      "date": "2017-09-26",
      "employment_period": "dbi-services-2014",
      "title": "When deterministic function is not",
      "url": "https://www.dbi-services.com/blog/when-deterministic-function-is-not/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Oracle will try to find the index entry by running the function, but then the value is not found in the index: SQL> delete from DEMO where n=3 and DEMO_FUNCTION(n) is not null; delete from DEMO where n=3 and DEMO_FUNCTION(n) is not null * ERROR at line 1: ORA-08102: index key not found, obj# 73317, file 12, block 5603 (2) This is a logical corruption caused by the bug in the function which was declared deterministic ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:when-deterministic-function-is-not",
      "database": "PostgreSQL",
      "date": "2017-09-26",
      "employment_period": "dbi-services-2014",
      "title": "When deterministic function is not",
      "url": "https://www.dbi-services.com/blog/when-deterministic-function-is-not/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Tests what happens when a function-based index is declared on a non-deterministic function, contrasting Oracle's in-place row updates with Postgres HOT/WARM's insert-and-mark-stale MVCC design.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:_suppress_identifiers_on_dupkey-the-sap-workaround-for-bad-design",
      "database": "Oracle Database",
      "date": "2017-09-29",
      "employment_period": "dbi-services-2014",
      "title": "“_suppress_identifiers_on_dupkey” – the SAP workaround for bad design",
      "url": "https://www.dbi-services.com/blog/_suppress_identifiers_on_dupkey-the-sap-workaround-for-bad-design/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "end; But it seems that there are many applications with this bad design, and Oracle has introduced an underscore parameter for them: “_suppress_identifiers_on_dupkey”.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-18c-ru-and-rur-for-pioneers-and-followers",
      "database": "Oracle Database",
      "date": "2017-10-03",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 18c RU and RUR for pioneers and followers",
      "url": "https://www.dbi-services.com/blog/oracle-18c-ru-and-rur-for-pioneers-and-followers/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Just a guess: if Oracle continues with’Cloud First’ release, there are good chances that we will get 18 c on-premises starting with 18.2 after a few months running 18.1 on the Cloud.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:autonomous-database",
      "database": "Oracle Database",
      "date": "2017-10-08",
      "employment_period": "dbi-services-2014",
      "title": "Autonomous Database",
      "url": "https://www.dbi-services.com/blog/autonomous-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distinguishes the marketing label from the underlying mechanisms of Oracle's Autonomous Database, tracing RAC and Data Guard availability features back to the Exadata Express Cloud Service.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:odc-appreciation-day-javascript-in-the-database",
      "database": "Oracle Database",
      "date": "2017-10-10",
      "employment_period": "dbi-services-2014",
      "title": "ODC Appreciation Day : Javascript in the database",
      "url": "https://www.dbi-services.com/blog/odc-appreciation-day-javascript-in-the-database/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "But the good thing at Oracle Open World, is that we can discuss with Oracle product managers, and with other Oracle DBAs or Developers, rather than relying on rumors or wrong ideas.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-database-multilingual-engine-mle",
      "database": "Oracle Database",
      "date": "2017-10-11",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Database Multilingual Engine (MLE)",
      "url": "https://www.dbi-services.com/blog/oracle-database-multilingual-engine-mle/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database Multilingual Engine (MLE).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:virtualbox-5-2-exports-the-vm-to-the-oracle-cloud",
      "database": "Oracle Database",
      "date": "2017-10-21",
      "employment_period": "dbi-services-2014",
      "title": "VirtualBox 5.2 exports the VM to the Oracle Cloud",
      "url": "https://www.dbi-services.com/blog/virtualbox-5-2-exports-the-vm-to-the-oracle-cloud/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "VirtualBox 5.2 exports the VM to the Oracle Cloud.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:archivelog-deletion-policy-on-data-guard-configuration",
      "database": "Oracle Database",
      "date": "2017-10-22",
      "employment_period": "dbi-services-2014",
      "title": "Archivelog deletion policy on Data Guard configuration",
      "url": "https://www.dbi-services.com/blog/archivelog-deletion-policy-on-data-guard-configuration/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Update (August 2026): the RMAN parsing bug was fixed At the time of the original investigation, I opened an Oracle Support Request for this problem.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:multitenant-dictionary-what-is-consolidated-and-what-is-not",
      "database": "Oracle Database",
      "date": "2017-11-05",
      "employment_period": "dbi-services-2014",
      "title": "Multitenant dictionary: what is consolidated and what is not",
      "url": "https://www.dbi-services.com/blog/multitenant-dictionary-what-is-consolidated-and-what-is-not/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Contrary to Oracle documentation stating Oracle-supplied objects live only in the root, system PL/SQL package source is root-only via metadata links, but system table definitions like COL$ are replicated into every PDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:multitenant-internals-int-and-intint-views",
      "database": "Oracle Database",
      "date": "2017-11-05",
      "employment_period": "dbi-services-2014",
      "title": "Multitenant internals: INT$ and INT$INT$ views",
      "url": "https://www.dbi-services.com/blog/multitenant-internals-int-and-intint-views/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle's doubled INT$INT$ dictionary views, such as INT$INT$DBA_CONSTRAINTS, merge CDB$ROOT and PDB data transparently for common views, layered on top of the simpler single INT$ extended-data-view mechanism.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:unstructed-vs-structured",
      "database": "Oracle Database",
      "date": "2017-11-18",
      "employment_period": "dbi-services-2014",
      "title": "Unstructured vs. structured",
      "url": "https://www.dbi-services.com/blog/unstructed-vs-structured/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "TIMES TO' and 'APPLIED' changes what Oracle reclaims.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-multitenant-internals-compiling-system-package-from-pdb",
      "database": "Oracle Database",
      "date": "2017-11-22",
      "employment_period": "dbi-services-2014",
      "title": "12c Multitenant Internals: compiling system package from PDB",
      "url": "https://www.dbi-services.com/blog/12c-multitenant-internals-compiling-system-package-from-pdb/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Tracing ALTER PACKAGE DBMS_SYSTEM COMPILE from a PDB shows Oracle switches to CDB$ROOT to read SOURCE$, yet some system DDL issued from a PDB is silently reduced to a no-op.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-docker-image-from-docker-store",
      "database": "Oracle Database",
      "date": "2017-12-15",
      "employment_period": "dbi-services-2014",
      "title": "Oracle docker image from docker store",
      "url": "https://www.dbi-services.com/blog/oracle-docker-image-from-docker-store/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "better",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Better to do that in a VM dedicated for Oracle Database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12cr2-subquery-elimination",
      "database": "Oracle Database",
      "date": "2017-12-21",
      "employment_period": "dbi-services-2014",
      "title": "12cR2 Subquery Elimination",
      "url": "https://www.dbi-services.com/blog/12cr2-subquery-elimination/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12cR2 adds Subquery Elimination, removing an EXISTS or IN semi-join subquery, and its extra full table scan, whenever the optimizer proves the subquery reads the same table with no filtering predicate.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:drop-pdb-including-datafiles-may-keep-files-open",
      "database": "Oracle Database",
      "date": "2017-12-25",
      "employment_period": "dbi-services-2014",
      "title": "Drop PDB including datafiles may keep files open",
      "url": "https://www.dbi-services.com/blog/drop-pdb-including-datafiles-may-keep-files-open/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You can see them with lsof or from the /proc filesystem: SQL> host find /proc/*/fd -ls 2>/dev/null | grep deleted 79174 0 lrwx------ 1 oracle oinstall 64 Dec 25 21:20 /proc/6116/fd/257 -> /u02/oradata/users01.dbf (deleted) 79195 0 lrwx------ 1 oracle oinstall 64 Dec 25 21:20 /proc/6118/fd/257 -> /u02/oradata/undotbs01.dbf (deleted) 79216 0 lrwx------ 1 oracle oinstall 64 Dec 25 21:20 /proc/6120/fd/257 -> /u02/oradata",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-multitenant-internals-pdb-replay-ddl-for-common-users",
      "database": "Oracle Database",
      "date": "2017-12-29",
      "employment_period": "dbi-services-2014",
      "title": "12c Multitenant internals: PDB replay DDL for common users",
      "url": "https://www.dbi-services.com/blog/12c-multitenant-internals-pdb-replay-ddl-for-common-users/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Common users, roles, and profiles created in CDB$ROOT are copied to each PDB by replaying DDL from PDB_SYNC$, not by metadata links, and Oracle tracks progress with a per-container REPLAY#.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-multitenant-internals-pdb_plug_in_violations",
      "database": "Oracle Database",
      "date": "2017-12-30",
      "employment_period": "dbi-services-2014",
      "title": "12c Multitenant internals: PDB_PLUG_IN_VIOLATIONS",
      "url": "https://www.dbi-services.com/blog/12c-multitenant-internals-pdb_plug_in_violations/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "When a common-user DDL statement fails on a closed PDB, Oracle records the failure in PDB_PLUG_IN_VIOLATIONS rather than blocking the CDB$ROOT change, then replays the DDL against that PDB the next time it opens.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:keep-your-orapw-password-file-secure",
      "database": "Oracle Database",
      "date": "2018-01-05",
      "employment_period": "dbi-services-2014",
      "title": "Keep your orapw password file secure",
      "url": "https://www.dbi-services.com/blog/keep-your-orapw-password-file-secure/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL> create or replace directory DBS as '/u01/app/oracle/product/12.2.0/dbhome_1/dbs'; Directory DBS created.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:spectre-and-meltdown-oracle-database-aws-slob",
      "database": "Oracle Database",
      "date": "2018-01-09",
      "employment_period": "dbi-services-2014",
      "title": "Spectre and Meltdown, Oracle Database, AWS, SLOB",
      "url": "https://www.dbi-services.com/blog/spectre-and-meltdown-oracle-database-aws-slob/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Spectre and Meltdown, Oracle Database, AWS, SLOB.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:spectremeltdown-on-oracle-public-cloud-uek-pio",
      "database": "Oracle Database",
      "date": "2018-01-13",
      "employment_period": "dbi-services-2014",
      "title": "Spectre/Meltdown on Oracle Public Cloud UEK – PIO",
      "url": "https://www.dbi-services.com/blog/spectremeltdown-on-oracle-public-cloud-uek-pio/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Spectre/Meltdown on Oracle Public Cloud UEK – PIO.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:spectre-and-meltdown-on-oracle-public-cloud-uek",
      "database": "Oracle Database",
      "date": "2018-01-14",
      "employment_period": "dbi-services-2014",
      "title": "Spectre and Meltdown on Oracle Public Cloud UEK – LIO",
      "url": "https://www.dbi-services.com/blog/spectre-and-meltdown-on-oracle-public-cloud-uek/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Spectre and Meltdown on Oracle Public Cloud UEK – LIO.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:testing-oracle-sql-online",
      "database": "Microsoft SQL Server",
      "date": "2018-01-27",
      "employment_period": "dbi-services-2014",
      "title": "Testing Oracle SQL online",
      "url": "https://www.dbi-services.com/blog/testing-oracle-sql-online/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is a small list (expecting to grow from your comments) of free online services which can run with an Oracle Database: SQL Fiddle, Rextester, db<>fiddle and Oracle Live SQL SQL Fiddle SQL Fiddle let you build a schema and run DDL on the following databases: Oracle 11 g R2 Microsoft SQL Server 2014 MySQL 5.6 Postgres 9.6 and 9.3 SQLLite (WebSQL and SQL.js) As an Oracle user, the Oracle 11gR2 is not very useful as ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:testing-oracle-sql-online",
      "database": "MySQL",
      "date": "2018-01-27",
      "employment_period": "dbi-services-2014",
      "title": "Testing Oracle SQL online",
      "url": "https://www.dbi-services.com/blog/testing-oracle-sql-online/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is a small list (expecting to grow from your comments) of free online services which can run with an Oracle Database: SQL Fiddle, Rextester, db<>fiddle and Oracle Live SQL SQL Fiddle SQL Fiddle let you build a schema and run DDL on the following databases: Oracle 11 g R2 Microsoft SQL Server 2014 MySQL 5.6 Postgres 9.6 and 9.3 SQLLite (WebSQL and SQL.js) As an Oracle user, the Oracle 11gR2 is not very useful as ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:testing-oracle-sql-online",
      "database": "Oracle Database",
      "date": "2018-01-27",
      "employment_period": "dbi-services-2014",
      "title": "Testing Oracle SQL online",
      "url": "https://www.dbi-services.com/blog/testing-oracle-sql-online/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Now that Oracle plans to release an XE version every year, this should be better soon.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:testing-oracle-sql-online",
      "database": "PostgreSQL",
      "date": "2018-01-27",
      "employment_period": "dbi-services-2014",
      "title": "Testing Oracle SQL online",
      "url": "https://www.dbi-services.com/blog/testing-oracle-sql-online/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is a small list (expecting to grow from your comments) of free online services which can run with an Oracle Database: SQL Fiddle, Rextester, db<>fiddle and Oracle Live SQL SQL Fiddle SQL Fiddle let you build a schema and run DDL on the following databases: Oracle 11 g R2 Microsoft SQL Server 2014 MySQL 5.6 Postgres 9.6 and 9.3 SQLLite (WebSQL and SQL.js) As an Oracle user, the Oracle 11gR2 is not very useful as ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:testing-oracle-sql-online",
      "database": "SQLite",
      "date": "2018-01-27",
      "employment_period": "dbi-services-2014",
      "title": "Testing Oracle SQL online",
      "url": "https://www.dbi-services.com/blog/testing-oracle-sql-online/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MariaDB 10.2 SQLite 3.8 PostgreSQL 8.4 9.4 9.6 10 Example: Oracle Live SQL Finally, you can also run on the latest release of Oracle, with a service provided by Oracle itself: Live SQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:result-cache-when-not-to-use-it",
      "database": "Oracle Database",
      "date": "2018-01-29",
      "employment_period": "dbi-services-2014",
      "title": "Result Cache: when *not* to use it",
      "url": "https://www.dbi-services.com/blog/result-cache-when-not-to-use-it/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle documentation So this is what I’ve find in the Database Performance Tuning Guide about the Benefits of Using the Server Result Cache The benefits of using the server result cache depend on the application OLAP applications can benefit significantly from its use.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:jan18-database-11gr2-psu-12cr1-proactivebp-12cr2-ru",
      "database": "Oracle Database",
      "date": "2018-02-06",
      "employment_period": "dbi-services-2014",
      "title": "JAN18: Database 11gR2 PSU, 12cR1 ProactiveBP, 12cR2 RU",
      "url": "https://www.dbi-services.com/blog/jan18-database-11gr2-psu-12cr1-proactivebp-12cr2-ru/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "If you want to apply the latest patches (and you should), you can go to the My Oracle Support Recommended Patch Advisor.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:server-process-name-in-postgres-and-oracle",
      "database": "Oracle Database",
      "date": "2018-02-09",
      "employment_period": "dbi-services-2014",
      "title": "Server process name in Postgres and Oracle",
      "url": "https://www.dbi-services.com/blog/server-process-name-in-postgres-and-oracle/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle With Oracle, you can have ASH to sample session state, but being able to see it at OS level would be great.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:server-process-name-in-postgres-and-oracle",
      "database": "PostgreSQL",
      "date": "2018-02-09",
      "employment_period": "dbi-services-2014",
      "title": "Server process name in Postgres and Oracle",
      "url": "https://www.dbi-services.com/blog/server-process-name-in-postgres-and-oracle/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "They are more or less the command name used in the feed back after the command completion ‘idle’ is for sessions not currently running a statement ‘waiting’ is added when the session is waiting on a blocker session (enqueued on a lock for example) ‘wal writer process’ is a background process This is very useful information, especially because we have, on the same sampling, the Postgres session state (idle, waiting or",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:full-page-logging-in-postgres-and-oracle",
      "database": "Oracle Database",
      "date": "2018-02-14",
      "employment_period": "dbi-services-2014",
      "title": "Full page logging in Postgres and Oracle",
      "url": "https://www.dbi-services.com/blog/full-page-logging-in-postgres-and-oracle/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "Deleting a lot of rows is an expensive operation in Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:full-page-logging-in-postgres-and-oracle",
      "database": "PostgreSQL",
      "date": "2018-02-14",
      "employment_period": "dbi-services-2014",
      "title": "Full page logging in Postgres and Oracle",
      "url": "https://www.dbi-services.com/blog/full-page-logging-in-postgres-and-oracle/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Full page logging in Postgres and Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:description_listdescriptionaddress_listfailoveryesload_balanceno",
      "database": "Oracle Database",
      "date": "2018-02-15",
      "employment_period": "dbi-services-2014",
      "title": "(DESCRIPTION_LIST=(DESCRIPTION=(ADDRESS_LIST=(FAILOVER=YES)(LOAD_BALANCE=NO)",
      "url": "https://www.dbi-services.com/blog/description_listdescriptionaddress_listfailoveryesload_balanceno/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I check them with strace on the connect() system call, with the following script: for i in {1..10} do TNS_ADMIN=/tmp strace -T -e trace=connect sqlplus -s -L sys/oracle@NET_SERVICE_NAME as sysdba <<< \"\" 2>&1 | awk ' /sa_family=AF_INET, sin_port=htons/{ gsub(/[()]/,\" \") ; printf \"%s \",$5 } END{ print \"\" } ' done | sort | uniq So, I used meaningful numbers for my fake ports: 101 and 102 for the addresses in the first d",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:18c-read-only-oracle-home",
      "database": "Oracle Database",
      "date": "2018-02-18",
      "employment_period": "dbi-services-2014",
      "title": "18c Read Only Oracle Home",
      "url": "https://www.dbi-services.com/blog/18c-read-only-oracle-home/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 2,
      "critical_weight": 2,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "I’ve no idea about the status of the bug, but at least this will not go to Oracle Home anymore.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oda-lite-what-is-this-odacli-repository",
      "database": "Oracle Database",
      "date": "2018-02-23",
      "employment_period": "dbi-services-2014",
      "title": "ODA Lite: What is this ‘odacli’ repository?",
      "url": "https://www.dbi-services.com/blog/oda-lite-what-is-this-odacli-repository/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "So better contact Oracle Support of you are not 142% sure about what you do.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:18c-cloud-first-and-cloud-only-features-think-differently",
      "database": "Oracle Database",
      "date": "2018-02-26",
      "employment_period": "dbi-services-2014",
      "title": "18c, Cloud First and Cloud Only features: think differently",
      "url": "https://www.dbi-services.com/blog/18c-cloud-first-and-cloud-only-features-think-differently/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "And buying this option can be expensive if you are on ULA (because you will buy it for all processors), or on non-Oracle Cloud (because of the core factor) and even there some features will not be available.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:a-free-persistent-google-cloud-service-with-oracle-xe",
      "database": "Oracle Database",
      "date": "2018-02-26",
      "employment_period": "dbi-services-2014",
      "title": "A free persistent Google Cloud service with Oracle XE",
      "url": "https://www.dbi-services.com/blog/a-free-persistent-google-cloud-service-with-oracle-xe/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "The major limitation here comes from Oracle XE which is an old version (11.2.0.2) but this year should come Oracle XE 18c with the latest features.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:18c-dbms_xplan-note-about-failed-sql-plan-baseline",
      "database": "Oracle Database",
      "date": "2018-02-27",
      "employment_period": "dbi-services-2014",
      "title": "18c dbms_xplan note about failed SQL Plan Baseline",
      "url": "https://www.dbi-services.com/blog/18c-dbms_xplan-note-about-failed-sql-plan-baseline/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Since Oracle 18c, DBMS_XPLAN.DISPLAY_CURSOR adds an explicit note when the optimizer failed to use a SQL Plan Baseline for a statement, after a data model change made the originally accepted plan unreproducible.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:18c-new-lost-write-protection",
      "database": "Oracle Database",
      "date": "2018-03-03",
      "employment_period": "dbi-services-2014",
      "title": "18c new Lost Write Protection",
      "url": "https://www.dbi-services.com/blog/18c-new-lost-write-protection/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 18c introduces a standalone Lost Write Protection tablespace that stores per-block SCNs to detect a silently dropped disk write, without needing a Data Guard standby as the earlier 11g mechanism did.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:enabled-accepted-fixed-sql-plan-baselines",
      "database": "Oracle Database",
      "date": "2018-03-09",
      "employment_period": "dbi-services-2014",
      "title": "Enabled, Accepted, Fixed SQL Plan Baselines",
      "url": "https://www.dbi-services.com/blog/enabled-accepted-fixed-sql-plan-baselines/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Testing 8 index-cost variations against a SQL Plan Baseline confirms Oracle only executes the currently Accepted plan among Enabled ones, ignoring cheaper newly loaded plans until they are manually accepted or fixed.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:18c-pdb-switchover",
      "database": "Oracle Database",
      "date": "2018-03-11",
      "employment_period": "dbi-services-2014",
      "title": "18c PDB switchover",
      "url": "https://www.dbi-services.com/blog/18c-pdb-switchover/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 18c's PDB-level switchover, built on refreshable PDBs, failed with ORA-46697 when mandatory TDE encryption was enabled on the source CDB, since 'alter pluggable database' offers no keystore-password option for it.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:result-cache-invalidation-caused-by-dml-locks",
      "database": "Oracle Database",
      "date": "2018-03-18",
      "employment_period": "dbi-services-2014",
      "title": "Result cache invalidation caused by DML locks",
      "url": "https://www.dbi-services.com/blog/result-cache-invalidation-caused-by-dml-locks/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A DELETE statement matching zero rows still invalidates a dependent Oracle Result Cache entry, because the statement still acquires a Row Exclusive TM-mode lock declaring intent to modify that table.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:docker-ce-on-oracle-enterprise-linux-7",
      "database": "Oracle Database",
      "date": "2018-03-29",
      "employment_period": "dbi-services-2014",
      "title": "Docker-CE on Oracle Enterprise Linux 7",
      "url": "https://www.dbi-services.com/blog/docker-ce-on-oracle-enterprise-linux-7/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Docker-CE on Oracle Enterprise Linux 7.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:docker-efficiently-building-images-for-large-software",
      "database": "Oracle Database",
      "date": "2018-03-31",
      "employment_period": "dbi-services-2014",
      "title": "Docker: efficiently building images for large software",
      "url": "https://www.dbi-services.com/blog/docker-efficiently-building-images-for-large-software/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But the installation process for Oracle does not really fit the Docker way to install by layers: you need to unzip the distribution, install from it to the Oracle Home, remove the things that are not needed, strop the binaries,… Before addressing those specific issues, here are the little tests I’ve done to show how the build layers increase the size of the image.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:after-iot-iop-makes-its-way-to-the-database",
      "database": "Oracle Database",
      "date": "2018-04-01",
      "employment_period": "dbi-services-2014",
      "title": "After IoT, IoP makes its way to the database",
      "url": "https://www.dbi-services.com/blog/after-iot-iop-makes-its-way-to-the-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Querying V$SQLFN_METADATA in Oracle 18c on the Oracle Cloud reveals an undocumented TO_DOG_YEAR SQL function tagged version V13, alongside newer JSON_MERGEPATCH and ROUND_TIES_TO_EVEN function entries.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:covering-indexes-in-oracle-and-branch-size",
      "database": "Microsoft SQL Server",
      "date": "2018-04-13",
      "employment_period": "dbi-services-2014",
      "title": "Covering indexes in Oracle, and branch size",
      "url": "https://www.dbi-services.com/blog/covering-indexes-in-oracle-and-branch-size/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle lacks SQL Server's INCLUDE clause, so adding covering columns means appending them to the key itself, which changes clustering factor and branch block size because the full entry is sorted.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:covering-indexes-in-oracle-and-branch-size",
      "database": "Oracle Database",
      "date": "2018-04-13",
      "employment_period": "dbi-services-2014",
      "title": "Covering indexes in Oracle, and branch size",
      "url": "https://www.dbi-services.com/blog/covering-indexes-in-oracle-and-branch-size/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You can add all columns to the key but depending on the implementation, the benefit can be: some data types may not be allowed in the key but allowed as data sorting the data when not required may be a performance overhead there can be limitations on the size of the key having a larger key may require more space in the branches adding sorted columns may change the clustering factor In Oracle, there are very few data ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:adwc-a-docker-container-to-startstop-oracle-cloud-services",
      "database": "Oracle Database",
      "date": "2018-05-03",
      "employment_period": "dbi-services-2014",
      "title": "ADWC – a Docker container to start/stop Oracle Cloud services",
      "url": "https://www.dbi-services.com/blog/adwc-a-docker-container-to-startstop-oracle-cloud-services/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "ADWC – a Docker container to start/stop Oracle Cloud services.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:adwc-the-hidden-gem-zepplin-notebook",
      "database": "Oracle Database",
      "date": "2018-05-04",
      "employment_period": "dbi-services-2014",
      "title": "ADWC – the hidden gem: Zepplin Notebook",
      "url": "https://www.dbi-services.com/blog/adwc-the-hidden-gem-zepplin-notebook/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Autonomous Data Warehouse's 'Manage Oracle ML Users' menu creates OML_DEVELOPER-role accounts needed to open the Apache-Zeppelin-based Oracle Machine Learning SQL Notebooks, separate from the regular ADMIN login.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:some-ideas-about-oracle-database-on-docker",
      "database": "Oracle Database",
      "date": "2018-05-08",
      "employment_period": "dbi-services-2014",
      "title": "Some ideas about Oracle Database on Docker",
      "url": "https://www.dbi-services.com/blog/some-ideas-about-oracle-database-on-docker/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 2,
      "mixed": true,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "faster",
        "great"
      ],
      "critical_signals": [
        "inefficient"
      ],
      "evidence_excerpt": "I started with the images provided by Oracle: and this is great to validate the docker environment.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:sql-developer-web-on-the-oracle-cloud",
      "database": "Oracle Database",
      "date": "2018-05-10",
      "employment_period": "dbi-services-2014",
      "title": "SQL Developer Web on the Oracle Cloud",
      "url": "https://www.dbi-services.com/blog/sql-developer-web-on-the-oracle-cloud/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL Developer Web on the Oracle Cloud.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:12c-upuserxt-lst-upobjxt-lst-oracle-maintained-objectsusers",
      "database": "Oracle Database",
      "date": "2018-05-15",
      "employment_period": "dbi-services-2014",
      "title": "12c upuserxt.lst, upobjxt.lst & Oracle Maintained objects/users",
      "url": "https://www.dbi-services.com/blog/12c-upuserxt-lst-upobjxt-lst-oracle-maintained-objectsusers/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Note that this information about Oracle Maintained objects, in addition to being very useful for us, is crucial when you further convert the non-CDB to a PDB because those will become metadata links.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:adwc-system-and-session-settings-dwcs-lockdown-profile",
      "database": "Oracle Database",
      "date": "2018-05-24",
      "employment_period": "dbi-services-2014",
      "title": "ADWC – System and session settings (DWCS lockdown profile)",
      "url": "https://www.dbi-services.com/blog/adwc-system-and-session-settings-dwcs-lockdown-profile/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, we have the privilege to change initialization parameters: SQL> select * from dba_sys_privs where grantee=user and privilege like 'ALTER S%'; GRANTEE PRIVILEGE ADMIN_OPTION COMMON INHERITED ------- --------- ------------ ------ --------- ADMIN ALTER SESSION YES NO NO ADMIN ALTER SYSTEM YES NO NO Still, not everything is allowed for several reasons: ensure that we cannot break the Oracle managed CDB and f",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgres-the-fsync-issue-and-pgio-the-slob-method-for-postgresql",
      "database": "PostgreSQL",
      "date": "2018-05-24",
      "employment_period": "dbi-services-2014",
      "title": "Postgres, the fsync() issue, and ‘pgio’ (the SLOB method for PostgreSQL)",
      "url": "https://www.dbi-services.com/blog/postgres-the-fsync-issue-and-pgio-the-slob-method-for-postgresql/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "That’s a long blog post title, which is actually just a good pretext to play with Kevin Closson SLOB method for PostgreSQL: pgio I use the beta version of pgio here.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:which-bitnami-service-to-choose-in-the-oracle-cloud-infrastructure",
      "database": "Oracle Database",
      "date": "2018-05-25",
      "employment_period": "dbi-services-2014",
      "title": "Which Bitnami service to choose in the Oracle Cloud Infrastructure?",
      "url": "https://www.dbi-services.com/blog/which-bitnami-service-to-choose-in-the-oracle-cloud-infrastructure/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Is Oracle Linux Unbreakable Kernel more efficient?",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:which-bitnami-service-to-choose-in-the-oracle-cloud-infrastructure",
      "database": "PostgreSQL",
      "date": "2018-05-25",
      "employment_period": "dbi-services-2014",
      "title": "Which Bitnami service to choose in the Oracle Cloud Infrastructure?",
      "url": "https://www.dbi-services.com/blog/which-bitnami-service-to-choose-in-the-oracle-cloud-infrastructure/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Running Kevin Closson's pgio SLOB method with four 1GB cached-only schemas across Bitnami PostgreSQL images on different Linux distributions isolates whether the kernel changes CPU throughput.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:openshift-on-my-windows-10-laptop-with-minishift",
      "database": "Oracle Database",
      "date": "2018-05-31",
      "employment_period": "dbi-services-2014",
      "title": "OpenShift on my Windows 10 laptop with MiniShift",
      "url": "https://www.dbi-services.com/blog/openshift-on-my-windows-10-laptop-with-minishift/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here are the ports that are redirected to: C:\\Users\\fpa>SET DOCKER_TLS_VERIFY=1 C:\\Users\\fpa>SET DOCKER_HOST=tcp://192.168.99.102:2376 C:\\Users\\fpa>SET DOCKER_CERT_PATH=C:\\Users\\fpa\\.minishift\\certs C:\\Users\\fpa>docker port orcl 1521/tcp -> 0.0.0.0:32771 5500/tcp -> 0.0.0.0:32770 Then, easy to connect with SQL*Net with the credentials provided (see the setup instructions ) C:\\Users\\fpa>sqlcl sys/Oradoc_db1@//192.168.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:sqlcl-connect-target-depends-on-previous-connection",
      "database": "Oracle Database",
      "date": "2018-06-01",
      "employment_period": "dbi-services-2014",
      "title": "SQLcl connect target depends on previous connection",
      "url": "https://www.dbi-services.com/blog/sqlcl-connect-target-depends-on-previous-connection/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL> define _CONNECT_IDENTIFIER DEFINE _CONNECT_IDENTIFIER = \"CDB1\" (CHAR) Disconnect The first solution to avoid this in SQLcl is to always disconnect before you want to connect to a different service: SQL> connect sys/oracle@//localhost/PDB1 as sysdba Connected.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:installing-mamp-to-play-with-php-mysql-and-openflights",
      "database": "MySQL",
      "date": "2018-06-02",
      "employment_period": "dbi-services-2014",
      "title": "Installing MAMP to play with PHP, MySQL and OpenFlights",
      "url": "https://www.dbi-services.com/blog/installing-mamp-to-play-with-php-mysql-and-openflights/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Installing MAMP to play with PHP, MySQL and OpenFlights.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:change-data-capture-from-oracle-with-streamset-data-collector",
      "database": "Oracle Database",
      "date": "2018-06-11",
      "employment_period": "dbi-services-2014",
      "title": "Change Data Capture from Oracle with StreamSets Data Collector",
      "url": "https://www.dbi-services.com/blog/change-data-capture-from-oracle-with-streamset-data-collector/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is good for existing products vendors such as Oracle GoldenGate (which must be licensed even to use only the CDC part in the Oracle Database as Streams is going to be desupported ) or Dbvisit replicate to Kafka .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:remote-syslog-from-linux-and-solaris",
      "database": "Oracle Database",
      "date": "2018-06-20",
      "employment_period": "dbi-services-2014",
      "title": "Remote syslog from Linux and Solaris",
      "url": "https://www.dbi-services.com/blog/remote-syslog-from-linux-and-solaris/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "If SYSDBA auditing stays only in adump or the database trail, the DBA can erase it; forwarding Oracle audit records with rsyslog over TCP or UDP 514 to another host protects the evidence.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:introduction-to-database-for-power-coders-with-mysql",
      "database": "MySQL",
      "date": "2018-06-22",
      "employment_period": "dbi-services-2014",
      "title": "Introduction to databases for {Power.Coders} with MySQL",
      "url": "https://www.dbi-services.com/blog/introduction-to-database-for-power-coders-with-mysql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Introduction to databases for {Power.Coders} with MySQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:18c-no-active-data-guard-required-and-detected-when-only-cdbroot-and-pdbseed-are-opened-in-read-only",
      "database": "Oracle Database",
      "date": "2018-06-24",
      "employment_period": "dbi-services-2014",
      "title": "18c: No Active Data Guard required (and detected) when only CDB$ROOT and PDB$SEED are opened in read-only",
      "url": "https://www.dbi-services.com/blog/18c-no-active-data-guard-required-and-detected-when-only-cdbroot-and-pdbseed-are-opened-in-read-only/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 18c removes the Active Data Guard requirement for real-time-apply read-only opening of CDB$ROOT and PDB$SEED during online PDB cloning, as long as user PDBs stay closed while managed recovery applies changes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:kernel-panic-not-syncing-out-of-memory-and-no-killable-processes",
      "database": "Oracle Database",
      "date": "2018-06-26",
      "employment_period": "dbi-services-2014",
      "title": "Kernel panic – not syncing: Out of memory and no killable processes",
      "url": "https://www.dbi-services.com/blog/kernel-panic-not-syncing-out-of-memory-and-no-killable-processes/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Of course, if the server tries to start the Oracle instances, the systems starts to swap so better change also the runlevel.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:lighty-for-postgresql",
      "database": "Oracle Database",
      "date": "2018-06-27",
      "employment_period": "dbi-services-2014",
      "title": "Lighty for PostgreSQL",
      "url": "https://www.dbi-services.com/blog/lighty-for-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Of course, if you compare it with Lighty for Oracle, you will see some limitations.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:lighty-for-postgresql",
      "database": "PostgreSQL",
      "date": "2018-06-27",
      "employment_period": "dbi-services-2014",
      "title": "Lighty for PostgreSQL",
      "url": "https://www.dbi-services.com/blog/lighty-for-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Lighty for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pgio-pg_stat_activity-and-pg_stat_statements",
      "database": "Oracle Database",
      "date": "2018-06-28",
      "employment_period": "dbi-services-2014",
      "title": "PGIO, PG_STAT_ACTIVITY and PG_STAT_STATEMENTS",
      "url": "https://www.dbi-services.com/blog/pgio-pg_stat_activity-and-pg_stat_statements/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle's V$SESSION and V$SQL joined on SQL_ID, PostgreSQL's pg_stat_activity only shows the top-level PL/pgSQL call during a PGIO run, so pg_stat_statements must be enabled to see the actual executed statements.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pgio-pg_stat_activity-and-pg_stat_statements",
      "database": "PostgreSQL",
      "date": "2018-06-28",
      "employment_period": "dbi-services-2014",
      "title": "PGIO, PG_STAT_ACTIVITY and PG_STAT_STATEMENTS",
      "url": "https://www.dbi-services.com/blog/pgio-pg_stat_activity-and-pg_stat_statements/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle's V$SESSION and V$SQL joined on SQL_ID, PostgreSQL's pg_stat_activity only shows the top-level PL/pgSQL call during a PGIO run, so pg_stat_statements must be enabled to see the actual executed statements.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:event-sourcing-cqn-is-not-a-replacement-for-cdc",
      "database": "Oracle Database",
      "date": "2018-07-02",
      "employment_period": "dbi-services-2014",
      "title": "Event Sourcing: CQN is not a replacement for CDC",
      "url": "https://www.dbi-services.com/blog/event-sourcing-cqn-is-not-a-replacement-for-cdc/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle's Continuous Query Notification, built for refreshing caches on slowly changing data, is not designed for event-sourcing microservice architectures that need Change Data Capture for frequent transactional changes.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:38594cf6a11a",
      "database": "Oracle Database",
      "date": "2018-07-06",
      "employment_period": "dbi-services-2014",
      "title": "strace the current Oracle session process",
      "url": "https://medium.com/@FranckPachot/strace-the-current-oracle-session-process-38594cf6a11a",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "strace the current Oracle session process.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:e71f650e3300",
      "database": "Oracle Database",
      "date": "2018-07-06",
      "employment_period": "dbi-services-2014",
      "title": "Oracle archivelog deletion policy",
      "url": "https://medium.com/@FranckPachot/oracle-archivelog-deletion-policy-e71f650e3300",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle archivelog deletion policy.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pgsentinel-the-sampling-approach-for-postgresql",
      "database": "PostgreSQL",
      "date": "2018-07-12",
      "employment_period": "dbi-services-2014",
      "title": "pgSentinel: the sampling approach for PostgreSQL",
      "url": "https://www.dbi-services.com/blog/pgsentinel-the-sampling-approach-for-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "pgSentinel: the sampling approach for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:16601c06fd3a",
      "database": "Oracle Database",
      "date": "2018-07-13",
      "employment_period": "dbi-services-2014",
      "title": "Oracle: connection rate to the listener",
      "url": "https://medium.com/@FranckPachot/oracle-connection-rate-to-the-listener-16601c06fd3a",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle: connection rate to the listener.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:drilling-down-the-pgsentinel-active-session-history",
      "database": "PostgreSQL",
      "date": "2018-07-15",
      "employment_period": "dbi-services-2014",
      "title": "Drilling down the pgSentinel Active Session History",
      "url": "https://www.dbi-services.com/blog/drilling-down-the-pgsentinel-active-session-history/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Grouping pg_active_session_history by backend_type over a 5-minute window and dividing the sample count by elapsed seconds derives an Average Active Sessions metric for PostgreSQL, matching Oracle's AAS from ASH.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:google-cloud-spanner-inserting-data",
      "database": "Oracle Database",
      "date": "2018-07-19",
      "employment_period": "dbi-services-2014",
      "title": "Google Cloud Spanner – inserting data",
      "url": "https://www.dbi-services.com/blog/google-cloud-spanner-inserting-data/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This reminds me of the Oracle CLUSTER segment that is so rarely used because storing the tables separately is finally the better compromise on performance and flexibility for a multi-purpose database.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:2dd8bfcd54b5",
      "database": "Oracle Database",
      "date": "2018-07-20",
      "employment_period": "dbi-services-2014",
      "title": "Installing ZFS on OEL7 UEK4",
      "url": "https://medium.com/@FranckPachot/installing-zfs-on-oel7-uek4-2dd8bfcd54b5",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Provides the yum and dkms commands to install OpenZFS on Oracle Linux 7 UEK4 in Oracle Cloud Compute, then creates a zpool intended for use as Docker storage.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:7b821155591",
      "database": "Oracle Database",
      "date": "2018-07-20",
      "employment_period": "dbi-services-2014",
      "title": "Conferences 2018",
      "url": "https://medium.com/@FranckPachot/conferences-2018-7b821155591",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "efficient",
        "improved"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In a DevOps environment, you need the finer access privilege definition that comes in Oracle Database 12.1 (common/local users) and Oracle Database 12.2 (lockdown profiles, PDB isolation), and that was improved in Oracle Database 18c.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:release-18-0-0-0-0-version-18-3-0-0-0-on-premises-binaries",
      "database": "Oracle Database",
      "date": "2018-07-24",
      "employment_period": "dbi-services-2014",
      "title": "Release 18.0.0.0.0 Version 18.3.0.0.0 On-Premises binaries",
      "url": "https://www.dbi-services.com/blog/release-18-0-0-0-0-version-18-3-0-0-0-on-premises-binaries/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "good",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Good news, the latest Patchset for Oracle 12cR2 (which is not named patchset anymore, is actually called release 18c and numbered 18.0.0.0.0) is available for download on OTN .",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:oracle-18c-preinstall-rpm-on-redhat-rhel",
      "database": "Oracle Database",
      "date": "2018-08-03",
      "employment_period": "dbi-services-2014",
      "title": "Oracle 18c preinstall RPM on RedHat RHEL",
      "url": "https://www.dbi-services.com/blog/oracle-18c-preinstall-rpm-on-redhat-rhel/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 18c preinstall RPM on RedHat RHEL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:merge-join-cartesian-a-join-method-or-a-join-type",
      "database": "Oracle Database",
      "date": "2018-08-08",
      "employment_period": "dbi-services-2014",
      "title": "MERGE JOIN CARTESIAN: a join method or a join type?",
      "url": "https://www.dbi-services.com/blog/merge-join-cartesian-a-join-method-or-a-join-type/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Forcing the USE_MERGE_CARTESIAN hint on an EMP-DEPT join shows Oracle can implement an inner join by first computing a full Cartesian product and filtering afterward, classifying it as a join method, not a join type.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:atp-vs-adw-the-autonomous-database-lockdown-profiles",
      "database": "Oracle Database",
      "date": "2018-08-09",
      "employment_period": "dbi-services-2014",
      "title": "ATP vs ADW – the Autonomous Database lockdown profiles",
      "url": "https://www.dbi-services.com/blog/atp-vs-adw-the-autonomous-database-lockdown-profiles/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle's ATP and ADW autonomous services run as PDBs inside the same CDB and differ mainly by their OLTP versus DWCS PDB lockdown profile, which enables the partitioning option only for the ATP profile.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:transport_connect_timeout-and-retry_count",
      "database": "Oracle Database",
      "date": "2018-08-10",
      "employment_period": "dbi-services-2014",
      "title": "TRANSPORT_CONNECT_TIMEOUT and RETRY_COUNT",
      "url": "https://www.dbi-services.com/blog/transport_connect_timeout-and-retry_count/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "TRANSPORT_CONNECT_TIMEOUT Now, just adding the TRANSPORT_CONNECT_TIMEOUT to the connection string description to reduce the timout to 4 seconds: DESCRIPTION= (DESCRIPTION= (CONNECT_DATA=(SERVICE_NAME=pdb1)) (TRANSPORT_CONNECT_TIMEOUT=4) (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=10.10.10.10)(PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=10.10.10.11)(PORT=1521)) ) ) The total time to get the answer from both addresses is ",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:18c-runinstaller-silent",
      "database": "Oracle Database",
      "date": "2018-08-12",
      "employment_period": "dbi-services-2014",
      "title": "18c runInstaller -silent",
      "url": "https://www.dbi-services.com/blog/18c-runinstaller-silent/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 18c's root-level runInstaller is a shell wrapper around Perl's dbSetup.pl, and calling it with -silent -executePrereqs checks OS prerequisites before installation without launching the Java GUI.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-database-on-openshift",
      "database": "Oracle Database",
      "date": "2018-08-14",
      "employment_period": "dbi-services-2014",
      "title": "Oracle Database on OpenShift",
      "url": "https://www.dbi-services.com/blog/oracle-database-on-openshift/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database on OpenShift.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-size-of-oracle-home-from-9gb-to-600mb",
      "database": "Oracle Database",
      "date": "2018-08-16",
      "employment_period": "dbi-services-2014",
      "title": "The size of Oracle Home: from 9GB to 600MB",
      "url": "https://www.dbi-services.com/blog/the-size-of-oracle-home-from-9gb-to-600mb/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The size of Oracle Home: from 9GB to 600MB.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:bc4a726efbdb",
      "database": "Oracle Database",
      "date": "2018-08-31",
      "employment_period": "dbi-services-2014",
      "title": "Download your SR content from MOS",
      "url": "https://medium.com/@FranckPachot/download-your-sr-content-from-mos-bc4a726efbdb",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Chains an exported Service Request Excel list through awk and lynx to bulk-download each My Oracle Support SR as a plain text file named by contact, SR number, and subject.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:e6476b3a5006",
      "database": "Oracle Database",
      "date": "2018-09-14",
      "employment_period": "cern-2018",
      "title": "How to gather Oracle optimizer statistics with minimal risks of regression",
      "url": "https://medium.com/@FranckPachot/how-to-gather-oracle-optimizer-statistics-with-minimal-risks-of-regression-e6476b3a5006",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How to gather Oracle optimizer statistics with minimal risks of regression.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:137",
      "database": "Oracle Database",
      "date": "2018-09-16",
      "employment_period": "cern-2018",
      "title": "Oracle Cloud Infrastructure API Keys and OCID",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-09-oracle-cloud-infrastructure-api-keys-and-ocid",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Cloud Infrastructure API Keys and OCID.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:138",
      "database": "Oracle Database",
      "date": "2018-09-16",
      "employment_period": "cern-2018",
      "title": "Oracle Cloud: start/stop automatically the Autonomous Databases",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-09-oracle-cloud-startstop-automatically-autonomous-databases",
      "source": "cern",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Looking at the script is also a good way to understand how to build the POST/GET request headers as expected by the Oracle Cloud REST API.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:139",
      "database": "Oracle Database",
      "date": "2018-09-26",
      "employment_period": "cern-2018",
      "title": "Oracle Cloud: upload large files through the Object Store REST API",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-09-oracle-cloud-upload-large-files-through-object-store-rest-api",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Cloud: upload large files through the Object Store REST API.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:ecb7de0f2abf",
      "database": "Oracle Database",
      "date": "2018-09-26",
      "employment_period": "cern-2018",
      "title": "Upload large files to Oracle Cloud with the Object Storage REST API",
      "url": "https://medium.com/@FranckPachot/upload-large-files-to-oracle-cloud-with-the-object-storage-rest-api-ecb7de0f2abf",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Upload large files to Oracle Cloud with the Object Storage REST API.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:142",
      "database": "Oracle Database",
      "date": "2018-09-27",
      "employment_period": "cern-2018",
      "title": "Oracle write consistency bug and multi-thread de-queuing",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-09-oracle-write-consistency-bug-and-multi-thread-de-queuing",
      "source": "cern",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 4,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Oracle write consistency bug and multi-thread de-queuing.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:abb00ed5bae7",
      "database": "Oracle Database",
      "date": "2018-09-27",
      "employment_period": "cern-2018",
      "title": "Oracle write consistency, bug, and scalable multi-thread de-queuing",
      "url": "https://medium.com/@FranckPachot/oracle-write-consistency-bug-and-scalable-multi-thread-de-queuing-abb00ed5bae7",
      "source": "medium",
      "evaluation": -2,
      "positive_weight": 5,
      "critical_weight": 12,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Oracle write consistency, bug, and scalable multi-thread de-queuing Oracle write consistency, bug, and scalable multi-thread de-queuing A new blog post on the Databases at CERN blog: Oracle write consistency, bug, and scalable multi-thread de-queuing A new blog post on the Databases at CERN blog : A write consistency bug, how to see it with flashback query, and a scalable workaround.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:143",
      "database": "Oracle Database",
      "date": "2018-09-28",
      "employment_period": "cern-2018",
      "title": "Unindexed Foreign Keys in Oracle and PostgreSQL",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-09-unindexed-foreign-keys-oracle-and-postgresql",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unindexed Foreign Keys in Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:143",
      "database": "PostgreSQL",
      "date": "2018-09-28",
      "employment_period": "cern-2018",
      "title": "Unindexed Foreign Keys in Oracle and PostgreSQL",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-09-unindexed-foreign-keys-oracle-and-postgresql",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unindexed Foreign Keys in Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:a674f552002e",
      "database": "Oracle Database",
      "date": "2018-10-02",
      "employment_period": "cern-2018",
      "title": "Unindexed Foreign Keys in Oracle and PostgreSQL",
      "url": "https://medium.com/@FranckPachot/unindexed-foreign-keys-in-oracle-and-postgresql-a674f552002e",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unindexed Foreign Keys in Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:a674f552002e",
      "database": "PostgreSQL",
      "date": "2018-10-02",
      "employment_period": "cern-2018",
      "title": "Unindexed Foreign Keys in Oracle and PostgreSQL",
      "url": "https://medium.com/@FranckPachot/unindexed-foreign-keys-in-oracle-and-postgresql-a674f552002e",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unindexed Foreign Keys in Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:145",
      "database": "Oracle Database",
      "date": "2018-10-11",
      "employment_period": "cern-2018",
      "title": "ODC Appreciation Day : Reduce CPU usage by running the business logic in the Oracle Database",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-10-odc-appreciation-day-reduce-cpu-usage-running-business-logic-oracle",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "ODC Appreciation Day : Reduce CPU usage by running the business logic in the Oracle Database.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:ad502e54f145",
      "database": "Oracle Database",
      "date": "2018-10-11",
      "employment_period": "cern-2018",
      "title": "ODC Appreciation Day: Reduce CPU usage by running the business logic in the Oracle Database",
      "url": "https://medium.com/@FranckPachot/odc-appreciation-day-reduce-cpu-usage-by-running-the-business-logic-in-the-oracle-database-ad502e54f145",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "ODC Appreciation Day: Reduce CPU usage by running the business logic in the Oracle Database.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:146",
      "database": "Oracle Database",
      "date": "2018-10-20",
      "employment_period": "cern-2018",
      "title": "An .rpm to install Oracle Database 18c",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-10-rpm-install-oracle-database-18c",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "An .rpm to install Oracle Database 18c.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:39c2d615e617",
      "database": "Oracle Database",
      "date": "2018-10-20",
      "employment_period": "cern-2018",
      "title": "A new blog post on the Databases at CERN blog about the new 18.3 installation with .rpm:",
      "url": "https://medium.com/@FranckPachot/a-new-blog-post-on-the-databases-at-cern-blog-about-the-new-18-3-installation-with-rpm-39c2d615e617",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Links to CERN coverage of the newly released 18.3 RPM installer for Oracle Database, announced at Oracle Open World a year before the RPM actually shipped.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:d9c5cf094af4",
      "database": "Oracle Database",
      "date": "2018-10-28",
      "employment_period": "cern-2018",
      "title": "What’s new in Oracle Database 19c and other #OOW18 feedback",
      "url": "https://medium.com/@FranckPachot/whats-new-in-oracle-database-19c-and-other-oow18-feedback-d9c5cf094af4",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "What’s new in Oracle Database 19c and other #OOW18 feedback.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:148",
      "database": "Oracle Database",
      "date": "2018-11-11",
      "employment_period": "cern-2018",
      "title": "Oracle LIKE predicate and cardinality estimations",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-11-oracle-predicate-and-cardinality-estimations",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle LIKE predicate and cardinality estimations.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:a9eb6bb43c36",
      "database": "Oracle Database",
      "date": "2018-11-11",
      "employment_period": "cern-2018",
      "title": "Oracle LIKE predicate and cardinality estimations",
      "url": "https://medium.com/@FranckPachot/oracle-like-predicate-and-cardinality-estimations-a9eb6bb43c36",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle LIKE predicate and cardinality estimations.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:384b5f244e0c",
      "database": "Oracle Database",
      "date": "2018-11-27",
      "employment_period": "cern-2018",
      "title": "Oracle Adaptive Plan info in OTHER_XML",
      "url": "https://medium.com/@FranckPachot/oracle-adaptive-plan-info-in-other-xml-384b5f244e0c",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Adaptive Plan info in OTHER_XML.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:150",
      "database": "Oracle Database",
      "date": "2018-11-30",
      "employment_period": "cern-2018",
      "title": "Oracle Index compression for range scan on file names",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-11-oracle-index-compression-range-scan-file-names",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Index compression for range scan on file names.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:5f85d14c49ff",
      "database": "Oracle Database",
      "date": "2018-12-01",
      "employment_period": "cern-2018",
      "title": "Oracle Index compression for range scan on file names",
      "url": "https://medium.com/@FranckPachot/oracle-index-compression-for-range-scan-on-file-names-5f85d14c49ff",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Index compression for range scan on file names.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:154",
      "database": "Oracle Database",
      "date": "2018-12-09",
      "employment_period": "cern-2018",
      "title": "Minimal Oracle",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-12-minimal-oracle",
      "source": "cern",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "00:38:03 SQL> select banner from DEMO; BANNER -------------------------------------------------------------------- Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production This looks good but is clearly insufficient.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:ed47447e62a0",
      "database": "Oracle Database",
      "date": "2018-12-11",
      "employment_period": "cern-2018",
      "title": "Minimal Oracle installation (and Docker image)",
      "url": "https://medium.com/@FranckPachot/minimal-oracle-installation-and-docker-image-ed47447e62a0",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Minimal Oracle installation (and Docker image).",
      "relation_aware": false
    },
    {
      "publication_id": "medium:aec8e4eec7f3",
      "database": "Oracle Database",
      "date": "2018-12-14",
      "employment_period": "cern-2018",
      "title": "CPU Capacity planning from OEM metrics",
      "url": "https://medium.com/@FranckPachot/cpu-capacity-planning-from-oem-metrics-aec8e4eec7f3",
      "source": "medium",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "CPU Capacity planning from OEM metrics CPU Capacity planning from OEM metrics The CPU used by your Oracle Database is expensive because it is the metric used by licensing.",
      "relation_aware": false
    },
    {
      "publication_id": "cern:155",
      "database": "Oracle Database",
      "date": "2018-12-16",
      "employment_period": "cern-2018",
      "title": "Oracle VPD as a safeguard for DML",
      "url": "https://db-blog.web.cern.ch/blog/franck-pachot/2018-12-oracle-vpd-safeguard-dml",
      "source": "cern",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle VPD as a safeguard for DML.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:eabf77bc38bb",
      "database": "Oracle Database",
      "date": "2018-12-17",
      "employment_period": "cern-2018",
      "title": "Oracle VPD as a safeguard for DML",
      "url": "https://medium.com/@FranckPachot/oracle-vpd-as-a-safeguard-for-dml-eabf77bc38bb",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle VPD as a safeguard for DML.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:302383103998",
      "database": "Microsoft SQL Server",
      "date": "2018-12-26",
      "employment_period": "cern-2018",
      "title": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server",
      "url": "https://medium.com/@FranckPachot/index-only-access-with-oracle-mysql-postgresql-and-microsoft-sql-server-302383103998",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:302383103998",
      "database": "MySQL",
      "date": "2018-12-26",
      "employment_period": "cern-2018",
      "title": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server",
      "url": "https://medium.com/@FranckPachot/index-only-access-with-oracle-mysql-postgresql-and-microsoft-sql-server-302383103998",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:302383103998",
      "database": "Oracle Database",
      "date": "2018-12-26",
      "employment_period": "cern-2018",
      "title": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server",
      "url": "https://medium.com/@FranckPachot/index-only-access-with-oracle-mysql-postgresql-and-microsoft-sql-server-302383103998",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:302383103998",
      "database": "PostgreSQL",
      "date": "2018-12-26",
      "employment_period": "cern-2018",
      "title": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server",
      "url": "https://medium.com/@FranckPachot/index-only-access-with-oracle-mysql-postgresql-and-microsoft-sql-server-302383103998",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index Only access with Oracle, MySQL, PostgreSQL, and Microsoft SQL Server.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:ab11aa7dbfe7",
      "database": "Oracle Database",
      "date": "2018-12-31",
      "employment_period": "cern-2018",
      "title": "UUID (aka GUID) vs. Oracle sequence number",
      "url": "https://medium.com/@FranckPachot/uuid-aka-guid-vs-oracle-sequence-number-ab11aa7dbfe7",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "efficient",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle provides SEQUENCE for this purpose, which is optimized, easy to use and scalable.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:b9dff0fbd5e9",
      "database": "Oracle Database",
      "date": "2019-01-05",
      "employment_period": "cern-2018",
      "title": "Oracle listener static service hi-jacking",
      "url": "https://medium.com/@FranckPachot/oracle-listener-static-service-hi-jacking-b9dff0fbd5e9",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "good",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle listener static service hi-jacking Oracle listener static service hi-jacking We must be careful about the services that are registered to a listener because the user connects to them with a good idea of the database… Oracle listener static service hi-jacking We must be careful about the services that are registered to a listener because the user connects to them with a good idea of the database she wants to co",
      "relation_aware": false
    },
    {
      "publication_id": "medium:9c4145831389",
      "database": "Oracle Database",
      "date": "2019-01-07",
      "employment_period": "cern-2018",
      "title": "Oracle literal vs bind-variable in partition pruning and Top-N queries",
      "url": "https://medium.com/@FranckPachot/oracle-literal-vs-bind-variable-in-partition-pruning-and-top-n-queries-9c4145831389",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle literal vs bind-variable in partition pruning and Top-N queries.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:1c2aa2aa3f32",
      "database": "Oracle Database",
      "date": "2019-01-08",
      "employment_period": "cern-2018",
      "title": "Oracle global vs. partition level statistics CBO usage",
      "url": "https://medium.com/@FranckPachot/oracle-global-vs-partition-level-statistics-cbo-usage-1c2aa2aa3f32",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle global vs.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:7761bc034704",
      "database": "Oracle Database",
      "date": "2019-01-10",
      "employment_period": "cern-2018",
      "title": "You don’t need the PLAN_TABLE table",
      "url": "https://medium.com/@FranckPachot/you-dont-need-the-plan-table-table-7761bc034704",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Traces a cannot-fetch-last-explain-plan error to a stale application-owned PLAN_TABLE shadowing the SYS global temporary table since Oracle 8i, fixed by dropping or renaming it.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:83346ccf6a41",
      "database": "Oracle Database",
      "date": "2019-01-18",
      "employment_period": "cern-2018",
      "title": "Oracle — Table lock modes",
      "url": "https://medium.com/@FranckPachot/oracle-table-lock-modes-83346ccf6a41",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle — Table lock modes.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:81e3175eae7e",
      "database": "Oracle Database",
      "date": "2019-01-24",
      "employment_period": "cern-2018",
      "title": "Oracle numbers in K/M/G/T/P/E",
      "url": "https://medium.com/@FranckPachot/oracle-numbers-in-k-m-g-t-p-e-81e3175eae7e",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle numbers in K/M/G/T/P/E.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:73e74dc727ee",
      "database": "Oracle Database",
      "date": "2019-02-14",
      "employment_period": "cern-2018",
      "title": "Network troubleshooting with tcpdump and strace",
      "url": "https://medium.com/@FranckPachot/network-troubleshooting-with-tcpdump-and-strace-73e74dc727ee",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "However, if I need a quick workaround I can limit the Session Data Unit on Oracle side, like: (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=myservice)) (SDU=1430) (ADDRESS=(PROTOCOL=TCP)(HOST=server)(PORT=1521))) With SDU at 1430 the length of the packets (as displayed by tcpdump) are at maximum 1460 bytes (NS and NT layers add 30 bytes) which is the maximum that can go through MTU 1500 (as IP and TCP headers add 20 bytes",
      "relation_aware": false
    },
    {
      "publication_id": "medium:345563a461f0",
      "database": "Oracle Database",
      "date": "2019-02-18",
      "employment_period": "cern-2018",
      "title": "Oracle 19c Hint Usage reporting",
      "url": "https://medium.com/@FranckPachot/oracle-19c-hint-usage-reporting-345563a461f0",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 19c Hint Usage reporting.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:f4ce8a37bfe3",
      "database": "Oracle Database",
      "date": "2019-02-20",
      "employment_period": "cern-2018",
      "title": "19c DG Broker export/import configuration",
      "url": "https://medium.com/@FranckPachot/19c-dg-broker-export-import-configuration-f4ce8a37bfe3",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "What this doesn’t show is that when you do not provide an extension, ‘.log’ will be added (which is a funny default for an XML file…) [oracle@db192 trace]$ ls -alrt $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace/*myconfig* -rw-r--r--.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:e0c3b77968d7",
      "database": "Oracle Database",
      "date": "2019-02-23",
      "employment_period": "cern-2018",
      "title": "19c Easy Connect",
      "url": "https://medium.com/@FranckPachot/19c-easy-connect-e0c3b77968d7",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "19c Easy Connect 19c Easy Connect When TCP/IP was the protocol used mostly everywhere, Oracle introduced EZCONNECT naming method to avoid long connection strings with… 19c Easy Connect When TCP/IP was the protocol used mostly everywhere, Oracle introduced EZCONNECT naming method to avoid long connection strings with parentheses everywhere.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:dd66d9558cdc",
      "database": "Oracle Database",
      "date": "2019-03-05",
      "employment_period": "cern-2018",
      "title": "My next Conferences in 2019",
      "url": "https://medium.com/@FranckPachot/my-next-conferences-in-2019-dd66d9558cdc",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Lists 2019 talks on data and code co-location with the Oracle MLE engine, optimizer statistics best practices, and join-method internals traced through internal rowsource functions.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:60ebdaecec3e",
      "database": "Oracle Database",
      "date": "2019-03-06",
      "employment_period": "cern-2018",
      "title": "19c Observe-Only Data Guard FSFO: no split-brain risk in manual failover",
      "url": "https://medium.com/@FranckPachot/19c-observe-only-data-guard-fsfo-no-split-brain-risk-in-manual-failover-60ebdaecec3e",
      "source": "medium",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "19c Observe-Only Data Guard FSFO: no split-brain risk in manual failover 19c Observe-Only Data Guard FSFO: no split-brain risk in manual failover Fast-Start Failover (FSFO) is an amazing feature of Oracle Data Guard Broker which brings High Availability (HA)features in addition to… 19c Observe-Only Data Guard FSFO: no split-brain risk in manual failover Fast-Start Failover (FSFO) is an amazing feature of Oracle Data ",
      "relation_aware": false
    },
    {
      "publication_id": "medium:88aab20ea0ab",
      "database": "Oracle Database",
      "date": "2019-03-06",
      "employment_period": "cern-2018",
      "title": "Oracle 19c Data Guard sandbox created by DBCA -createDuplicateDB",
      "url": "https://medium.com/@FranckPachot/oracle-19c-data-guard-sandbox-created-by-dbca-createduplicatedb-88aab20ea0ab",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 19c Data Guard sandbox created by DBCA -createDuplicateDB.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:ef798bcd096c",
      "database": "Oracle Database",
      "date": "2019-03-14",
      "employment_period": "cern-2018",
      "title": "Oracle stored procedure compilation errors displayed for humans",
      "url": "https://medium.com/@FranckPachot/oracle-stored-procedure-compilation-errors-displayed-for-humans-ef798bcd096c",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle stored procedure compilation errors displayed for humans.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:7ce6414aa6c4",
      "database": "Oracle Database",
      "date": "2019-03-15",
      "employment_period": "cern-2018",
      "title": "Oracle Multi-Lingual Engine",
      "url": "https://medium.com/@FranckPachot/oracle-multi-lingual-engine-7ce6414aa6c4",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Multi-Lingual Engine.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:a7a102e1e5ce",
      "database": "Oracle Database",
      "date": "2019-03-17",
      "employment_period": "cern-2018",
      "title": "SQL, PL/SQL and JavaScript running in the Database Server (Oracle MLE)",
      "url": "https://medium.com/@FranckPachot/sql-pl-sql-and-javascript-running-in-the-database-server-oracle-mle-a7a102e1e5ce",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL, PL/SQL and JavaScript running in the Database Server (Oracle MLE).",
      "relation_aware": false
    },
    {
      "publication_id": "medium:415ffa064955",
      "database": "PostgreSQL",
      "date": "2019-03-18",
      "employment_period": "cern-2018",
      "title": "High CPU usage in docker-proxy with chatty database application? Disable userland-proxy!",
      "url": "https://medium.com/@FranckPachot/high-cpu-usage-in-docker-proxy-with-chatty-database-application-disable-userland-proxy-415ffa064955",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Traces high docker-proxy CPU usage in a chatty PostgreSQL and pgbench container setup back to Docker's default userland-proxy, resolved by disabling it or co-locating the containers.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:387886a18086",
      "database": "MySQL",
      "date": "2019-04-04",
      "employment_period": "cern-2018",
      "title": "Adding JDBC driver property in SQL Developer connecting to MySQL",
      "url": "https://medium.com/@FranckPachot/adding-jdbc-driver-property-in-sql-developer-connecting-to-mysql-387886a18086",
      "source": "medium",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "Injects a serverTimezone parameter after the port field in SQL Developer's MySQL connection dialog, working around its lack of a dedicated JDBC property input field.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:387886a18086",
      "database": "Oracle Database",
      "date": "2019-04-04",
      "employment_period": "cern-2018",
      "title": "Adding JDBC driver property in SQL Developer connecting to MySQL",
      "url": "https://medium.com/@FranckPachot/adding-jdbc-driver-property-in-sql-developer-connecting-to-mysql-387886a18086",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "However, this trick works if you want to add any property to the JDBC URL string when connecting with Oracle SQL Developer, which provides no other way to add properties.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:8e326bb8c9f5",
      "database": "Oracle Database",
      "date": "2019-04-04",
      "employment_period": "cern-2018",
      "title": "19c EZCONNECT and Wallet (Easy Connect and External Password File)",
      "url": "https://medium.com/@FranckPachot/19c-ezconnect-and-wallet-easy-connect-and-external-password-file-8e326bb8c9f5",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "19c dummy parameter Oracle 19c extends the EZCONNECT syntax as I described recently in: 19c Easy Connect When TCP/IP was the protocol used mostly everywhere, Oracle introduced EZCONNECT naming method to avoid long connection… medium.com With this syntax, I can add parameters.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:db0a8db4c38f",
      "database": "Oracle Database",
      "date": "2019-04-06",
      "employment_period": "cern-2018",
      "title": "zHeap: PostgreSQL with UNDO",
      "url": "https://medium.com/@FranckPachot/zheap-postgresql-with-undo-db0a8db4c38f",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For a better installation… zHeap: PostgreSQL with UNDO I’m running on an Oracle Cloud Linux 7.6 VM provisioned as a sandbox so I don’t care about where it installs.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:db0a8db4c38f",
      "database": "PostgreSQL",
      "date": "2019-04-06",
      "employment_period": "cern-2018",
      "title": "zHeap: PostgreSQL with UNDO",
      "url": "https://medium.com/@FranckPachot/zheap-postgresql-with-undo-db0a8db4c38f",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For a better installation… zHeap: PostgreSQL with UNDO I’m running on an Oracle Cloud Linux 7.6 VM provisioned as a sandbox so I don’t care about where it installs.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:dfd666911bed",
      "database": "Oracle Database",
      "date": "2019-04-07",
      "employment_period": "cern-2018",
      "title": "19c EM Express (aka Oracle Cloud Database Express)",
      "url": "https://medium.com/@FranckPachot/19c-em-express-aka-oracle-cloud-database-express-dfd666911bed",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "19c EM Express (aka Oracle Cloud Database Express).",
      "relation_aware": false
    },
    {
      "publication_id": "medium:e00cb81ed7e2",
      "database": "Oracle Database",
      "date": "2019-04-22",
      "employment_period": "cern-2018",
      "title": "You should set OCSID.CLIENTID",
      "url": "https://medium.com/@FranckPachot/you-should-set-ocsid-clientid-e00cb81ed7e2",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I can see my SQLcl (java) with nothing set, the JDBC thin session with MODULE, ACTION and CLIENT_IDENTIFIER, and the DBLINK session (connected to SYSTEM) with only the CLIENT_IDENTIFIER set: SQL> select username,client_identifier,module,action 2 from v$session where type='USER'; USERNAME CLIENT_IDENTIFIER MODULE ACTION __________ ___________________ ________________________ ____________ SYSTEM my Client ID oracle@db1",
      "relation_aware": false
    },
    {
      "publication_id": "medium:e7b68cb6427d",
      "database": "PostgreSQL",
      "date": "2019-04-28",
      "employment_period": "cern-2018",
      "title": "PostgreSQL and Jupyter notebook",
      "url": "https://medium.com/@FranckPachot/postgresql-and-jupyter-notebook-e7b68cb6427d",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I create a new notebook with New-Python3: I load the iPython SQL extension: %load_ext sql connect to the DEMO database %sql postgresql://localhost/demo and I can run some SQL statements, like: %sql select version() But I’ll not put more commands in this blog post, because that’s the main advantage of a Jupyter Notebook: show the commands, the output, and some comments.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:b3a198b5b796",
      "database": "Oracle Database",
      "date": "2019-05-05",
      "employment_period": "cern-2018",
      "title": "#VDC19 Voxxed Days CERN 2019",
      "url": "https://medium.com/@FranckPachot/vdc19-voxxed-days-cern-2019-b3a198b5b796",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Switzerland offered some Cloud trials where you don’t have to put your credit card number and that’s a really good initiative, finally.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:c782d2011252",
      "database": "Oracle Database",
      "date": "2019-05-10",
      "employment_period": "cern-2018",
      "title": "Easy Oracle Cloud wallet location in the JDBC connection string",
      "url": "https://medium.com/@FranckPachot/easy-oracle-cloud-wallet-location-in-the-jdbc-connection-string-c782d2011252",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Easy Oracle Cloud wallet location in the JDBC connection string.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:7a97e7727b03",
      "database": "Oracle Database",
      "date": "2019-05-12",
      "employment_period": "cern-2018",
      "title": "Did you forget to allocate Huge Pages on your PostgreSQL server?",
      "url": "https://medium.com/@FranckPachot/did-you-forget-to-allocate-huge-pages-on-your-postgresql-server-7a97e7727b03",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows via pmap that PostgreSQL's huge_pages=try default silently falls back to small pages when the OS has none allocated, unlike Oracle which tries to maximize huge-page usage.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:7a97e7727b03",
      "database": "PostgreSQL",
      "date": "2019-05-12",
      "employment_period": "cern-2018",
      "title": "Did you forget to allocate Huge Pages on your PostgreSQL server?",
      "url": "https://medium.com/@FranckPachot/did-you-forget-to-allocate-huge-pages-on-your-postgresql-server-7a97e7727b03",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Did you forget to allocate Huge Pages on your PostgreSQL server?.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:ddb99bb7ba15",
      "database": "Oracle Database",
      "date": "2019-05-16",
      "employment_period": "cern-2018",
      "title": "I ‘fixed’ execution plan regression with optimizer_features_enable, what to do next?",
      "url": "https://medium.com/@FranckPachot/i-fixed-execution-plan-regression-with-optimizer-features-enable-what-to-do-next-ddb99bb7ba15",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "If you want to know more about Partial Join Evaluation, Google tells me that I blogged about this in the past: Partial Join Evaluation in Oracle 12c - Blog dbi services Do you think that it's better to write semi-join SQL statements with IN(), EXISTS(), or to do a JOIN?",
      "relation_aware": false
    },
    {
      "publication_id": "medium:d8692a33e3d6",
      "database": "Oracle Database",
      "date": "2019-05-19",
      "employment_period": "cern-2018",
      "title": "Do you know what you are measuring with pgbench?",
      "url": "https://medium.com/@FranckPachot/do-you-know-what-you-are-measuring-with-pgbench-d8692a33e3d6",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "pgio I’ll use Kevin Closson ‘pgio’ which is the same approach as his ‘SLOB’ for Oracle: SLOB Resources This page will be used to offer quick links to the latest SLOB kit contents.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:2fa7ff16803b",
      "database": "Oracle Database",
      "date": "2019-05-20",
      "employment_period": "cern-2018",
      "title": "Generate your Oracle Secure External Password Store wallet from your tnsnames.ora",
      "url": "https://medium.com/@FranckPachot/generate-your-oracle-secure-external-password-store-wallet-from-your-tnsnames-ora-2fa7ff16803b",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Generate your Oracle Secure External Password Store wallet from your tnsnames.ora.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:15d2f9b4ca1f",
      "database": "PostgreSQL",
      "date": "2019-05-27",
      "employment_period": "cern-2018",
      "title": "PostgreSQL: measuring query activity(WAL size generated, shared buffer reads, filesystem reads,…)",
      "url": "https://medium.com/@FranckPachot/postgresql-measuring-query-activity-wal-size-generated-shared-buffer-reads-filesystem-reads-15d2f9b4ca1f",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Update I update the ‘flag’ column to set half of the rows to ‘Y’: update DEMO set flag='Y' where n%2=0; This is the operation where PostgreSQL MVCC is less efficient.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:4d341be23764",
      "database": "Oracle Database",
      "date": "2019-06-03",
      "employment_period": "cern-2018",
      "title": "When Oracle Statistic Gathering times out.",
      "url": "https://medium.com/@FranckPachot/when-oracle-statistic-gathering-times-out-4d341be23764",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "When Oracle Statistic Gathering times out..",
      "relation_aware": false
    },
    {
      "publication_id": "medium:d57a8c8c2ca9",
      "database": "Oracle Database",
      "date": "2019-06-05",
      "employment_period": "cern-2018",
      "title": "Hibernate for Oracle DBAs",
      "url": "https://medium.com/@FranckPachot/hibernate-for-oracle-dbas-d57a8c8c2ca9",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Hibernate for Oracle DBAs.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:5e88b12282b0",
      "database": "Oracle Database",
      "date": "2019-06-16",
      "employment_period": "cern-2018",
      "title": "A Jupyter notebook on Google Collab to connect to the Oracle Cloud ATP",
      "url": "https://medium.com/@FranckPachot/a-jupyter-notebook-on-google-collab-to-connect-to-the-oracle-cloud-atp-5e88b12282b0",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A Jupyter notebook on Google Collab to connect to the Oracle Cloud ATP.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:7454432a7738",
      "database": "Oracle Database",
      "date": "2019-06-20",
      "employment_period": "cern-2018",
      "title": "Oracle/Hibernate de-queuing",
      "url": "https://medium.com/@FranckPachot/oracle-hibernate-de-queuing-7454432a7738",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle/Hibernate de-queuing.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:5a9281b68d72",
      "database": "Oracle Database",
      "date": "2019-06-22",
      "employment_period": "cern-2018",
      "title": "Oracle ATP: MEDIUM and HIGH services are not for OLTP",
      "url": "https://medium.com/@FranckPachot/oracle-atp-medium-and-high-services-are-not-for-oltp-5a9281b68d72",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle ATP: MEDIUM and HIGH services are not for OLTP.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:e991199d3d24",
      "database": "Oracle Database",
      "date": "2019-06-26",
      "employment_period": "cern-2018",
      "title": "Oracle Materialized View Refresh Group atomicity— How to prove transactional consistency with…",
      "url": "https://medium.com/@FranckPachot/oracle-materialized-view-refresh-group-atomicity-how-to-prove-transactional-consistency-with-e991199d3d24",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Materialized View Refresh Group atomicity— How to prove transactional consistency with….",
      "relation_aware": false
    },
    {
      "publication_id": "medium:b60793913a4e",
      "database": "Oracle Database",
      "date": "2019-06-28",
      "employment_period": "cern-2018",
      "title": "Hi Gg,",
      "url": "https://medium.com/@FranckPachot/hi-gg-b60793913a4e",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Cites an Oracle support note explaining that parallel execution processes each run their own transaction coordinated by two-phase commit, so concurrent transactions can conflict.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:5466917c490f",
      "database": "Oracle Database",
      "date": "2019-07-02",
      "employment_period": "cern-2018",
      "title": "Oracle Refresh Group consistency with nested materialized views.",
      "url": "https://medium.com/@FranckPachot/oracle-refresh-group-consistency-with-nested-materialized-views-5466917c490f",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Materialized View Concepts and Architecture When a fast refresh is performed on a materialized view, Oracle must examine all of the changes to the master table or… docs.oracle.com But what does that mean when one materialized view depends on the other?",
      "relation_aware": false
    },
    {
      "publication_id": "medium:f949d4802322",
      "database": "Oracle Database",
      "date": "2019-07-05",
      "employment_period": "cern-2018",
      "title": "strace -k (build with libunwind)",
      "url": "https://medium.com/@FranckPachot/strace-k-build-with-libunwind-f949d4802322",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Rebuilds strace with libunwind support on OEL7 to enable the -k flag, printing full C stack traces for each system call, tested by tracing the Oracle log writer process.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:2f17c98bd6db",
      "database": "Oracle Database",
      "date": "2019-07-09",
      "employment_period": "cern-2018",
      "title": "Hi Tuyen, as this removes lot of files from the Oracle Home, many features will not work.",
      "url": "https://medium.com/@FranckPachot/hi-tuyen-as-this-removes-lot-of-files-from-the-oracle-home-many-features-will-not-work-2f17c98bd6db",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Hi Tuyen, as this removes lot of files from the Oracle Home, many features will not work..",
      "relation_aware": false
    },
    {
      "publication_id": "medium:ccd5baf85bf7",
      "database": "Oracle Database",
      "date": "2019-07-12",
      "employment_period": "cern-2018",
      "title": "Oracle Heterogeneous Services",
      "url": "https://medium.com/@FranckPachot/oracle-heterogeneous-services-ccd5baf85bf7",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Heterogeneous Services.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:d4e016e90af6",
      "database": "Oracle Database",
      "date": "2019-07-15",
      "employment_period": "cern-2018",
      "title": "Ideas for Event Sourcing in Oracle",
      "url": "https://medium.com/@FranckPachot/ideas-for-event-sourcing-in-oracle-d4e016e90af6",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient",
        "robust"
      ],
      "critical_signals": [],
      "evidence_excerpt": "[DBZ-137] Ingest change data from Oracle databases using LogMiner - JBoss Issue Tracker Edit description issues.jboss.org Oracle XStreams The perfect solution as it has minimal overhead on the source and is very efficient.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:8ffa811a7c68",
      "database": "Oracle Database",
      "date": "2019-07-20",
      "employment_period": "cern-2018",
      "title": "Oracle DBA_SQL_PLAN_BASELINE SQL_ID and PLAN_HASH_VALUE",
      "url": "https://medium.com/@FranckPachot/oracle-dba-sql-plan-baseline-sql-id-and-plan-hash-value-8ffa811a7c68",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle DBA_SQL_PLAN_BASELINE SQL_ID and PLAN_HASH_VALUE Oracle DBA_SQL_PLAN_BASELINE SQL_ID and PLAN_HASH_VALUE There are probably better ways, so please let me know (@FranckPachot).",
      "relation_aware": false
    },
    {
      "publication_id": "medium:3a15450dfa42",
      "database": "PostgreSQL",
      "date": "2019-07-21",
      "employment_period": "cern-2018",
      "title": "Running pgBench on YugaByteDB 1.3",
      "url": "https://medium.com/@FranckPachot/running-pgbench-on-yugabytedb-1-3-3a15450dfa42",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good",
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "So, one of the great features is that the query layer is compatible with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:3a15450dfa42",
      "database": "YugabyteDB",
      "date": "2019-07-21",
      "employment_period": "cern-2018",
      "title": "Running pgBench on YugaByteDB 1.3",
      "url": "https://medium.com/@FranckPachot/running-pgbench-on-yugabytedb-1-3-3a15450dfa42",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "pgbench --no-vacuum --builtin=simple-update --protocol=prepared --time 30 -h localhost -p 5433 -U postgres franck pgbench --no-vacuum --builtin=simple-update --protocol=prepared --time 30 -h localhost -p 5433 -U postgres franck At least I know that this basic OLTP application can run without any change on YugaByteDB and that’s a very good point for application transparency.",
      "relation_aware": false
    },
    {
      "publication_id": "medium:3012d494712",
      "database": "Oracle Database",
      "date": "2019-07-26",
      "employment_period": "cern-2018",
      "title": "Oracle & Postgres JDBC Fetch Size",
      "url": "https://medium.com/@FranckPachot/oracle-postgres-jdbc-fetch-size-3012d494712",
      "source": "medium",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle & Postgres JDBC Fetch Size.",
      "relation_aware": true
    },
    {
      "publication_id": "medium:3012d494712",
      "database": "PostgreSQL",
      "date": "2019-07-26",
      "employment_period": "cern-2018",
      "title": "Oracle & Postgres JDBC Fetch Size",
      "url": "https://medium.com/@FranckPachot/oracle-postgres-jdbc-fetch-size-3012d494712",
      "source": "medium",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle & Postgres JDBC Fetch Size.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rollback-to-savepoint",
      "database": "Db2",
      "date": "2020-02-04",
      "employment_period": "dbi-services-2020",
      "title": "ROLLBACK TO SAVEPOINT;",
      "url": "https://www.dbi-services.com/blog/rollback-to-savepoint/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle, DB2, SQL Server, and MySQL, PostgreSQL discards an entire transaction after any statement error, including a prior successful insert, unless an explicit SAVEPOINT was set before the failing statement.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rollback-to-savepoint",
      "database": "Microsoft SQL Server",
      "date": "2020-02-04",
      "employment_period": "dbi-services-2020",
      "title": "ROLLBACK TO SAVEPOINT;",
      "url": "https://www.dbi-services.com/blog/rollback-to-savepoint/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle, DB2, SQL Server, and MySQL, PostgreSQL discards an entire transaction after any statement error, including a prior successful insert, unless an explicit SAVEPOINT was set before the failing statement.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rollback-to-savepoint",
      "database": "Oracle Database",
      "date": "2020-02-04",
      "employment_period": "dbi-services-2020",
      "title": "ROLLBACK TO SAVEPOINT;",
      "url": "https://www.dbi-services.com/blog/rollback-to-savepoint/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle, DB2, SQL Server, and MySQL, PostgreSQL discards an entire transaction after any statement error, including a prior successful insert, unless an explicit SAVEPOINT was set before the failing statement.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rollback-to-savepoint",
      "database": "PostgreSQL",
      "date": "2020-02-04",
      "employment_period": "dbi-services-2020",
      "title": "ROLLBACK TO SAVEPOINT;",
      "url": "https://www.dbi-services.com/blog/rollback-to-savepoint/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I’ve met great people there, learned interesting things about matter and anti-matter, and went out of my comfort zone like co-organizing a PostgreSQL meetup and inviting external people ( ) for visits and conferences.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:running-sql-server-on-the-oracle-free-tier",
      "database": "Microsoft SQL Server",
      "date": "2020-02-08",
      "employment_period": "dbi-services-2020",
      "title": "Running SQL Server on the Oracle Free tier",
      "url": "https://www.dbi-services.com/blog/running-sql-server-on-the-oracle-free-tier/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Running SQL Server on the Oracle Free tier.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:running-sql-server-on-the-oracle-free-tier",
      "database": "Oracle Database",
      "date": "2020-02-08",
      "employment_period": "dbi-services-2020",
      "title": "Running SQL Server on the Oracle Free tier",
      "url": "https://www.dbi-services.com/blog/running-sql-server-on-the-oracle-free-tier/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Running SQL Server on the Oracle Free tier.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:how-sql-server-mvcc-compares-to-oracle-and-postgresql",
      "database": "Microsoft SQL Server",
      "date": "2020-02-09",
      "employment_period": "dbi-services-2020",
      "title": "How SQL Server MVCC compares to Oracle and PostgreSQL",
      "url": "https://www.dbi-services.com/blog/how-sql-server-mvcc-compares-to-oracle-and-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How SQL Server MVCC compares to Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:how-sql-server-mvcc-compares-to-oracle-and-postgresql",
      "database": "Oracle Database",
      "date": "2020-02-09",
      "employment_period": "dbi-services-2020",
      "title": "How SQL Server MVCC compares to Oracle and PostgreSQL",
      "url": "https://www.dbi-services.com/blog/how-sql-server-mvcc-compares-to-oracle-and-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How SQL Server MVCC compares to Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:how-sql-server-mvcc-compares-to-oracle-and-postgresql",
      "database": "PostgreSQL",
      "date": "2020-02-09",
      "employment_period": "dbi-services-2020",
      "title": "How SQL Server MVCC compares to Oracle and PostgreSQL",
      "url": "https://www.dbi-services.com/blog/how-sql-server-mvcc-compares-to-oracle-and-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How SQL Server MVCC compares to Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:sqlnet-expire_time-and-enablebroken",
      "database": "Oracle Database",
      "date": "2020-02-15",
      "employment_period": "dbi-services-2020",
      "title": "SQLNET.EXPIRE_TIME and ENABLE=BROKEN",
      "url": "https://www.dbi-services.com/blog/sqlnet-expire_time-and-enablebroken/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Since Oracle Net 12c, server-side Dead Connection Detection relies on TCP keep-alive instead of a TNS packet, and tracing connect() calls on both listener and client confirms when ENABLE=BROKEN is actually still needed.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-20c-sql-macros-a-scalar-example-to-join-agility-and-performance",
      "database": "Oracle Database",
      "date": "2020-02-24",
      "employment_period": "dbi-services-2020",
      "title": "Oracle 20c SQL Macros: a scalar example to join agility and performance",
      "url": "https://www.dbi-services.com/blog/oracle-20c-sql-macros-a-scalar-example-to-join-agility-and-performance/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 20c SQL Macros: a scalar example to join agility and performance.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:refactoring-procedural-to-sql-an-example-with-mysql-sakila",
      "database": "MySQL",
      "date": "2020-03-01",
      "employment_period": "dbi-services-2020",
      "title": "Refactoring procedural to SQL – an example with MySQL Sakila",
      "url": "https://www.dbi-services.com/blog/refactoring-procedural-to-sql-an-example-with-mysql-sakila/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Refactoring procedural to SQL – an example with MySQL Sakila.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:yugabytedb-2-1",
      "database": "PostgreSQL",
      "date": "2020-03-08",
      "employment_period": "dbi-services-2020",
      "title": "YugaByteDB 2.1: the Open Source multi-region distributed database with PostgreSQL API is in GA with huge performance improvement",
      "url": "https://www.dbi-services.com/blog/yugabytedb-2-1/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better",
        "better side of comparison",
        "improvement"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugaByteDB 2.1: the Open Source multi-region distributed database with PostgreSQL API is in GA with huge performance improvement.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:yugabytedb-2-1",
      "database": "YugabyteDB",
      "date": "2020-03-08",
      "employment_period": "dbi-services-2020",
      "title": "YugaByteDB 2.1: the Open Source multi-region distributed database with PostgreSQL API is in GA with huge performance improvement",
      "url": "https://www.dbi-services.com/blog/yugabytedb-2-1/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "improvement"
      ],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "YugabyteDB 2.1 GA fixed the slow pgbench initialization time seen in an earlier 1.3 beta and delivered roughly nine times higher pgbench throughput on the same 3-node, replication-factor-3 cluster.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ysql_bench",
      "database": "CockroachDB",
      "date": "2020-03-09",
      "employment_period": "dbi-services-2020",
      "title": "ysql_bench: the YugaByteDB version of pgbench",
      "url": "https://www.dbi-services.com/blog/ysql_bench/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The big advantage of YugaByteDB is that the YSQL API is more than just compatibility with PostgreSQL like what CockroachDB does.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ysql_bench",
      "database": "PostgreSQL",
      "date": "2020-03-09",
      "employment_period": "dbi-services-2020",
      "title": "ysql_bench: the YugaByteDB version of pgbench",
      "url": "https://www.dbi-services.com/blog/ysql_bench/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "advantage",
        "better",
        "good",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This has been raised in the PostgreSQL hackers’s list: pgBench retry: the “max-tries” patch Around the same time when I came with the PL/pgSQL workaround, YugabyteDB has implemented the mentioned patch in their fork of the postgres code: , which is a much better solution.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:ysql_bench",
      "database": "YugabyteDB",
      "date": "2020-03-09",
      "employment_period": "dbi-services-2020",
      "title": "ysql_bench: the YugaByteDB version of pgbench",
      "url": "https://www.dbi-services.com/blog/ysql_bench/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "advantage",
        "named source of advantages",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This follows the previous post on testing YugaByteDB 2.1 performance with pgbench: A distributed database needs to reduce inter-node synchronization latency and then replaces two-phase pessimistic locking by optimistic concurrency control in many places.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:dynamodb-covering-gsi",
      "database": "Amazon DynamoDB",
      "date": "2020-03-16",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB: adding a Global covering index to reduce the cost",
      "url": "https://www.dbi-services.com/blog/dynamodb-covering-gsi/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "benefit",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "DynamoDB: adding a Global covering index to reduce the cost.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dynamodb-covering-lsi",
      "database": "Amazon DynamoDB",
      "date": "2020-03-16",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB: adding a Local covering index to reduce the cost",
      "url": "https://www.dbi-services.com/blog/dynamodb-covering-lsi/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "advantage",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB: adding a Local covering index to reduce the cost.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-support-easy-export-of-sql-testcase",
      "database": "Oracle Database",
      "date": "2020-04-20",
      "employment_period": "dbi-services-2020",
      "title": "Oracle Support: Easy export of SQL Testcase",
      "url": "https://www.dbi-services.com/blog/oracle-support-easy-export-of-sql-testcase/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Rather than providing those huge traces to Oracle Support, better to give an easy to reproduce test case.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:tibero-i",
      "database": "Oracle Database",
      "date": "2020-04-22",
      "employment_period": "dbi-services-2020",
      "title": "티베로 – The most compatible alternative to Oracle Database",
      "url": "https://www.dbi-services.com/blog/tibero-i/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "Many Oracle customers are looking for alternatives to the Oracle Database, because of unfriendly commercial and licensing practices, like forcing the usage of expensive options or not counting vCPU for licensing.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-aurora-xactsync-batch-commit",
      "database": "Amazon Aurora",
      "date": "2020-05-01",
      "employment_period": "dbi-services-2020",
      "title": "AWS Aurora IO:XactSync is not a PostgreSQL wait event",
      "url": "https://www.dbi-services.com/blog/aws-aurora-xactsync-batch-commit/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "AWS Aurora IO:XactSync is not a PostgreSQL wait event.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-aurora-xactsync-batch-commit",
      "database": "PostgreSQL",
      "date": "2020-05-01",
      "employment_period": "dbi-services-2020",
      "title": "AWS Aurora IO:XactSync is not a PostgreSQL wait event",
      "url": "https://www.dbi-services.com/blog/aws-aurora-xactsync-batch-commit/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In PostgreSQL , as in most RDBMS except for exclusive fast load operations, the user session backend process writes to shared memory buffers.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-myth-of-nosql-vs-rdbms-agility-adding-attributes",
      "database": "Amazon DynamoDB",
      "date": "2020-05-07",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) agility: adding attributes",
      "url": "https://www.dbi-services.com/blog/the-myth-of-nosql-vs-rdbms-agility-adding-attributes/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "NoSQL databases like AWS DynamoDB are very efficient for those specific use cases.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-myth-of-nosql-vs-rdbms-agility-adding-attributes",
      "database": "MongoDB",
      "date": "2020-05-07",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) agility: adding attributes",
      "url": "https://www.dbi-services.com/blog/the-myth-of-nosql-vs-rdbms-agility-adding-attributes/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "— Kirk Kirkconnell (@NoSQLKnowHow) April 23, 2020 A question on StackOverflow: “Is ‘column-adding’ (schema modification) a key advantage of a NoSQL (mongodb) database over a RDBMS like MySQL” .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-myth-of-nosql-vs-rdbms-agility-adding-attributes",
      "database": "MySQL",
      "date": "2020-05-07",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) agility: adding attributes",
      "url": "https://www.dbi-services.com/blog/the-myth-of-nosql-vs-rdbms-agility-adding-attributes/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "— Kirk Kirkconnell (@NoSQLKnowHow) April 23, 2020 A question on StackOverflow: “Is ‘column-adding’ (schema modification) a key advantage of a NoSQL (mongodb) database over a RDBMS like MySQL” .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-myth-of-nosql-vs-rdbms-agility-adding-attributes",
      "database": "Oracle Database",
      "date": "2020-05-07",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) agility: adding attributes",
      "url": "https://www.dbi-services.com/blog/the-myth-of-nosql-vs-rdbms-agility-adding-attributes/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Adding a nullable column to an existing Oracle table only updates data dictionary metadata rather than every existing row, refuting the claim that adding an attribute is costlier in SQL than in a NoSQL JSON document.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-myth-of-nosql-vs-rdbms-agility-adding-attributes",
      "database": "YugabyteDB",
      "date": "2020-05-07",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) agility: adding attributes",
      "url": "https://www.dbi-services.com/blog/the-myth-of-nosql-vs-rdbms-agility-adding-attributes/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugaByte DB In a distributed database, metadata must be updated in all nodes, but this is still in milliseconds whatever the table size is: I didn’t show the test with not null and default value as I encountered an issue (adding column is fast but default value not selected).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:20c-awr-now-stores-explain-plan-predicates",
      "database": "Oracle Database",
      "date": "2020-05-13",
      "employment_period": "dbi-services-2020",
      "title": "20c: AWR now stores explain plan predicates",
      "url": "https://www.dbi-services.com/blog/20c-awr-now-stores-explain-plan-predicates/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 20c's AWR finally stores filter and access predicates for colored SQL statements, letting DBMS_XPLAN.DISPLAY_AWR show them after bugs previously blocked Statspack and AWR from capturing predicates.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:always-free-always-up-tmux-in-the-oracle-cloud-with-ksplice-updates",
      "database": "Oracle Database",
      "date": "2020-05-14",
      "employment_period": "dbi-services-2020",
      "title": "Always free / always up tmux in the Oracle Cloud with KSplice updates",
      "url": "https://www.dbi-services.com/blog/always-free-always-up-tmux-in-the-oracle-cloud-with-ksplice-updates/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Always free / always up tmux in the Oracle Cloud with KSplice updates.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-standard-edition-on-aws-a-socket-arithmetic",
      "database": "Oracle Database",
      "date": "2020-05-20",
      "employment_period": "dbi-services-2020",
      "title": "Oracle Standard Edition on AWS ☁ socket arithmetic",
      "url": "https://www.dbi-services.com/blog/oracle-standard-edition-on-aws-a-socket-arithmetic/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The good thing is that you can even use Oracle hypervisor (OVM or KVM), LPAR or Zones to pin one socket only for the usage of Oracle, and use the other for something else.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:tibero-ii",
      "database": "Oracle Database",
      "date": "2020-05-26",
      "employment_period": "dbi-services-2020",
      "title": "티베로 – The AWR-like “Tibero Performance Repository”",
      "url": "https://www.dbi-services.com/blog/tibero-ii/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The compatibility with Oracle is very good so that queries on V$SESSION are the same, The only thing I changed is the SID userenv that is called TID in Tibero: SELECT ((10000000000 * (SID + SERIAL#)) + 1000000000000) INTO v_my_serial from v$session WHERE sid = ( select sys_context('userenv','tid') from dual); I got a TBR-11006: Invalid USERENV parameter before this change.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-select-from-file",
      "database": "Oracle Database",
      "date": "2020-06-04",
      "employment_period": "dbi-services-2020",
      "title": "Oracle 18c – select from a flat file",
      "url": "https://www.dbi-services.com/blog/oracle-select-from-file/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 18c – select from a flat file.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-index-on-joins",
      "database": "Oracle Database",
      "date": "2020-06-05",
      "employment_period": "dbi-services-2020",
      "title": "Oracle 12c – pre-built join index",
      "url": "https://www.dbi-services.com/blog/oracle-index-on-joins/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle's Synchronous Refresh for Materialized Views, using REFRESH FAST ON STATEMENT, behaves like a pre-built join index by storing a dimension table's country_code alongside a fact table row automatically.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:what-is-a-serverless-database",
      "database": "Amazon Aurora",
      "date": "2020-06-05",
      "employment_period": "dbi-services-2020",
      "title": "What is a serverless database?",
      "url": "https://www.dbi-services.com/blog/what-is-a-serverless-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Serverless as not paying for the server AWS has a true serverless and elastic database offer: Amazon Aurora Serverless .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:what-is-a-serverless-database",
      "database": "Oracle Database",
      "date": "2020-06-05",
      "employment_period": "dbi-services-2020",
      "title": "What is a serverless database?",
      "url": "https://www.dbi-services.com/blog/what-is-a-serverless-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A serverless database means server provisioning no longer sits on a project's critical path, contrasted here with a 1996 setup where obtaining and racking Oracle Database hardware took weeks.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-row-pattern",
      "database": "Oracle Database",
      "date": "2020-06-08",
      "employment_period": "dbi-services-2020",
      "title": "Oracle 12c – peak detection with MATCH_RECOGNIZE",
      "url": "https://www.dbi-services.com/blog/oracle-row-pattern/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c – peak detection with MATCH_RECOGNIZE.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12c-clustering",
      "database": "Oracle Database",
      "date": "2020-06-10",
      "employment_period": "dbi-services-2020",
      "title": "Oracle 12c – reorg and split table with clustering",
      "url": "https://www.dbi-services.com/blog/oracle-12c-clustering/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c – reorg and split table with clustering.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12c-global-partial-index",
      "database": "Amazon DynamoDB",
      "date": "2020-06-10",
      "employment_period": "dbi-services-2020",
      "title": "Oracle 12c – global partial index",
      "url": "https://www.dbi-services.com/blog/oracle-12c-global-partial-index/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "That’s a completely different approach from purpose-built databases where you have one database service for fast ingest with simple queries on recent data (NoSQL folks may think about DynamoDB for that), then streaming data to a relational database for more OLTP queries (RDS to continue with the AWS analogy), and move old data into a database dedicated to analytics (that could be Redshift then).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-12c-global-partial-index",
      "database": "Oracle Database",
      "date": "2020-06-10",
      "employment_period": "dbi-services-2020",
      "title": "Oracle 12c – global partial index",
      "url": "https://www.dbi-services.com/blog/oracle-12c-global-partial-index/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle 12c – global partial index.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:column-level-collate",
      "database": "Oracle Database",
      "date": "2020-06-16",
      "employment_period": "dbi-services-2020",
      "title": "Oracle non-linguistic varchar2 columns to order by without sorting",
      "url": "https://www.dbi-services.com/blog/column-level-collate/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle non-linguistic varchar2 columns to order by without sorting.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-ace-program",
      "database": "Oracle Database",
      "date": "2020-06-24",
      "employment_period": "dbi-services-2020",
      "title": "The Oracle ACE program ♠ what it is not ♠",
      "url": "https://www.dbi-services.com/blog/oracle-ace-program/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Because I like to work with them, with Oracle Customers, with Oracle employees,… And then there are good chances that I’ll stay in the program and at the same level.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:some-myths-about-postgresql-vs-oracle",
      "database": "Oracle Database",
      "date": "2020-06-24",
      "employment_period": "dbi-services-2020",
      "title": "Some myths about PostgreSQL vs. Oracle",
      "url": "https://www.dbi-services.com/blog/some-myths-about-postgresql-vs-oracle/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:some-myths-about-postgresql-vs-oracle",
      "database": "PostgreSQL",
      "date": "2020-06-24",
      "employment_period": "dbi-services-2020",
      "title": "Some myths about PostgreSQL vs. Oracle",
      "url": "https://www.dbi-services.com/blog/some-myths-about-postgresql-vs-oracle/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Some myths about PostgreSQL vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:al7",
      "database": "Oracle Database",
      "date": "2020-06-30",
      "employment_period": "dbi-services-2020",
      "title": "Oracle Autonomous Linux: cron’d ksplice and yum updates",
      "url": "https://www.dbi-services.com/blog/al7/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It can run the same kernel as RHEL but also provides, still for free, the ‘unbreakable kernel’ (UEK) which is still compatible with RHEL but enhanced with optimizations, recommended especially when running Oracle products.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-acfs-du-df",
      "database": "Oracle Database",
      "date": "2020-07-03",
      "employment_period": "dbi-services-2020",
      "title": "Oracle ACFS: “du” vs. “df” and “acfsutil info”",
      "url": "https://www.dbi-services.com/blog/oracle-acfs-du-df/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle ACFS: “du” vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-myth-of-nosql-vs-rdbms-joins-dont-scale",
      "database": "Oracle Database",
      "date": "2020-07-05",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) “joins dont scale”",
      "url": "https://www.dbi-services.com/blog/the-myth-of-nosql-vs-rdbms-joins-dont-scale/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A query joining roughly 900,000 SALES rows to PRODUCTS on Oracle Autonomous Database returns in 92 milliseconds via a nested loop with index range scan, contradicting the claim that relational joins scale poorly.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:the-myth-of-nosql-vs-rdbms-joins-dont-scale",
      "database": "PostgreSQL",
      "date": "2020-07-05",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) “joins dont scale”",
      "url": "https://www.dbi-services.com/blog/the-myth-of-nosql-vs-rdbms-joins-dont-scale/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "It says that “As the size of your tables grow, these operations will get slower and slower.” I will build those tables, in PostgreSQL here, because that’s my preferred Open Source RDBMS, and show that: Performance is not a black box: all RDBMS have an EXPLAIN command that display exactly the algorithm used (even CPU and memory access) and you can estimate the cost easily from it.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:19c-scalable-top-n-queries",
      "database": "Oracle Database",
      "date": "2020-07-14",
      "employment_period": "dbi-services-2020",
      "title": "19c: scalable Top-N queries without further hints to the query planner",
      "url": "https://www.dbi-services.com/blog/19c-scalable-top-n-queries/",
      "source": "dbi-services",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 4,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Oracle 19c fixes bug 22174392 so a query using FETCH FIRST n ROWS ONLY gets correct low cardinality row estimates without needing the FIRST_ROWS() hint that was previously required in 12c.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dbpod",
      "database": "Oracle Database",
      "date": "2020-07-14",
      "employment_period": "dbi-services-2020",
      "title": "DBPod – le podcast Bases de Données",
      "url": "https://www.dbi-services.com/blog/dbpod/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The DBPod podcast launched with three Oracle-focused episodes covering database versioning between 19c and 20c, Release Updates, and the Multitenant option, distributed through Anchor, Spotify, and Apple Podcasts.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:a-serverless-standby-database-called-oracle-autonomous-data-guard",
      "database": "Oracle Database",
      "date": "2020-07-16",
      "employment_period": "dbi-services-2020",
      "title": "A Serverless Standby Database called Oracle Autonomous Data Guard",
      "url": "https://www.dbi-services.com/blog/a-serverless-standby-database-called-oracle-autonomous-data-guard/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A Serverless Standby Database called Oracle Autonomous Data Guard.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:myth-nosql-vs-rdbms-relational-queries-are-unbounded",
      "database": "Oracle Database",
      "date": "2020-07-21",
      "employment_period": "dbi-services-2020",
      "title": "The myth of NoSQL (vs. RDBMS) “a simpler API to bound resources”",
      "url": "https://www.dbi-services.com/blog/myth-nosql-vs-rdbms-relational-queries-are-unbounded/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "On Oracle's free Autonomous tier, Resource Manager caps CPU and I/O per service even for a SALES join to PRODUCTS, showing a relational call can be bounded like a NoSQL lookup.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:a-lesson-from-nosql-vs-rdbms-listen-to-your-users",
      "database": "Amazon DynamoDB",
      "date": "2020-08-01",
      "employment_period": "dbi-services-2020",
      "title": "A lesson from NoSQL (vs. RDBMS): listen to your users",
      "url": "https://www.dbi-services.com/blog/a-lesson-from-nosql-vs-rdbms-listen-to-your-users/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example of myself trying to understand the metrics from a DynamoDB Scan and match it with CloudWatch metrics: Hard maths with @dynamodb 🤔 Scanned 36M items from 25 RCU/s free tier table (3GB) in 10085 seconds 👉3600 item/s = 216000 item/min 👉219 KB/s = 55*4KB/s ✅CloudWatch: 210000 scan return item/minute ❓ConsumedCapacity: 128.5 consumed CU ❓CloudWatch: 38.5 read capacity (unit/s) pic.twitter.com/r35dtTOKjO",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:a-lesson-from-nosql-vs-rdbms-listen-to-your-users",
      "database": "MongoDB",
      "date": "2020-08-01",
      "employment_period": "dbi-services-2020",
      "title": "A lesson from NoSQL (vs. RDBMS): listen to your users",
      "url": "https://www.dbi-services.com/blog/a-lesson-from-nosql-vs-rdbms-listen-to-your-users/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This commercial database is very powerful and have nothing to envy to NoSQL about scalability: RAC, Hash partitioning, Parallel Query,… But when you look at the papers about MongoDB or DynamoDB the comparisons are always with MySQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:a-lesson-from-nosql-vs-rdbms-listen-to-your-users",
      "database": "MySQL",
      "date": "2020-08-01",
      "employment_period": "dbi-services-2020",
      "title": "A lesson from NoSQL (vs. RDBMS): listen to your users",
      "url": "https://www.dbi-services.com/blog/a-lesson-from-nosql-vs-rdbms-listen-to-your-users/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This commercial database is very powerful and have nothing to envy to NoSQL about scalability: RAC, Hash partitioning, Parallel Query,… But when you look at the papers about MongoDB or DynamoDB the comparisons are always with MySQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rdbms-scales-the-algorithm",
      "database": "Amazon DynamoDB",
      "date": "2020-08-03",
      "employment_period": "dbi-services-2020",
      "title": "RDBMS (vs. NoSQL) scales the algorithm before the hardware",
      "url": "https://www.dbi-services.com/blog/rdbms-scales-the-algorithm/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Comparing a hash-partitioned DynamoDB access pattern against an Oracle nested-loop index join on up to 2000 keys shows both scale predictably as matched rows per key grow, unlike the claim that RDBMS joins don't scale.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rdbms-scales-the-algorithm",
      "database": "Microsoft SQL Server",
      "date": "2020-08-03",
      "employment_period": "dbi-services-2020",
      "title": "RDBMS (vs. NoSQL) scales the algorithm before the hardware",
      "url": "https://www.dbi-services.com/blog/rdbms-scales-the-algorithm/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "You can read more about the inflection point where a full table scan is better than index access in a previous post: as this also applies to joins and scaling the algorithm can even happen after the SQL query compilation – at execution time – in some RDBMS ( Oracle and SQL Server for example).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:rdbms-scales-the-algorithm",
      "database": "Oracle Database",
      "date": "2020-08-03",
      "employment_period": "dbi-services-2020",
      "title": "RDBMS (vs. NoSQL) scales the algorithm before the hardware",
      "url": "https://www.dbi-services.com/blog/rdbms-scales-the-algorithm/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You can read more about the inflection point where a full table scan is better than index access in a previous post: as this also applies to joins and scaling the algorithm can even happen after the SQL query compilation – at execution time – in some RDBMS ( Oracle and SQL Server for example).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-dynamodb-local",
      "database": "Amazon DynamoDB",
      "date": "2020-08-07",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB Local: running NoSQL on SQLite",
      "url": "https://www.dbi-services.com/blog/aws-dynamodb-local/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You know how to run DynamoDB locally, and can even access it with SQL for powerful queries 😉",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-dynamodb-local",
      "database": "Oracle Database",
      "date": "2020-08-07",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB Local: running NoSQL on SQLite",
      "url": "https://www.dbi-services.com/blog/aws-dynamodb-local/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL databases have optimization for full table scans, and the database for those 338498 rows is really small: [oracle@cloud aws]$ du -h /var/tmp/DynamoDBLocal/shared-local-instance.db 106M /var/tmp/DynamoDBLocal/shared-local-instance.db Counting the rows is faster from SQLite directly: [oracle@cloud aws]$ time sqlite3 /var/tmp/DynamoDBLocal/shared-local-instance.db \"select count(*) from Demo;\" 338498 real 0m0.045s us",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-dynamodb-local",
      "database": "SQLite",
      "date": "2020-08-07",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB Local: running NoSQL on SQLite",
      "url": "https://www.dbi-services.com/blog/aws-dynamodb-local/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "SQL databases have optimization for full table scans, and the database for those 338498 rows is really small: [oracle@cloud aws]$ du -h /var/tmp/DynamoDBLocal/shared-local-instance.db 106M /var/tmp/DynamoDBLocal/shared-local-instance.db Counting the rows is faster from SQLite directly: [oracle@cloud aws]$ time sqlite3 /var/tmp/DynamoDBLocal/shared-local-instance.db \"select count(*) from Demo;\" 338498 real 0m0.045s us",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-dynamodb-the-cost-of-indexes",
      "database": "Amazon DynamoDB",
      "date": "2020-08-13",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB: the cost of indexes",
      "url": "https://www.dbi-services.com/blog/aws-dynamodb-the-cost-of-indexes/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon DynamoDB: the cost of indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-adb-rename",
      "database": "Oracle Database",
      "date": "2020-08-13",
      "employment_period": "dbi-services-2020",
      "title": "Oracle ADB: rename the service_name connect_data",
      "url": "https://www.dbi-services.com/blog/oracle-adb-rename/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle ADB: rename the service_name connect_data.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:sql-server-on-oracle-cloud",
      "database": "Microsoft SQL Server",
      "date": "2020-08-24",
      "employment_period": "dbi-services-2020",
      "title": "SQL Server on Oracle Cloud",
      "url": "https://www.dbi-services.com/blog/sql-server-on-oracle-cloud/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL Server on Oracle Cloud.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:sql-server-on-oracle-cloud",
      "database": "Oracle Database",
      "date": "2020-08-24",
      "employment_period": "dbi-services-2020",
      "title": "SQL Server on Oracle Cloud",
      "url": "https://www.dbi-services.com/blog/sql-server-on-oracle-cloud/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL Server on Oracle Cloud.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:data-virtualization-on-sql-server-with-redgate-sql-clone",
      "database": "Microsoft SQL Server",
      "date": "2020-08-25",
      "employment_period": "dbi-services-2020",
      "title": "Data virtualization on SQL Server with Redgate SQL Clone",
      "url": "https://www.dbi-services.com/blog/data-virtualization-on-sql-server-with-redgate-sql-clone/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "No problem, I have already very good contacts at Redgate even if I’m not working with SQL Server very often.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:troubleshooting-autonomous-database",
      "database": "Oracle Database",
      "date": "2020-08-29",
      "employment_period": "dbi-services-2020",
      "title": "Troubleshooting performance on Autonomous Database",
      "url": "https://www.dbi-services.com/blog/troubleshooting-autonomous-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Autonomous Database's Performance Hub drills ASH activity by Consumer Group, Wait Class, and Wait Event, isolating roughly 0.86 average active sessions attributed entirely to internal background processes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-dynamodb-a-relational-glossary",
      "database": "Amazon DynamoDB",
      "date": "2020-09-17",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB: a r(el)ational Glossary",
      "url": "https://www.dbi-services.com/blog/aws-dynamodb-a-relational-glossary/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "Table This is where using the same name in DynamoDB as in SQL database can mislead to a bad data model.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:amazon-or-aws-services",
      "database": "Amazon DynamoDB",
      "date": "2020-09-18",
      "employment_period": "dbi-services-2020",
      "title": "Amazon or AWS services?",
      "url": "https://www.dbi-services.com/blog/amazon-or-aws-services/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "AWS names standalone customer-facing services 'Amazon', like DynamoDB and RDS, while utility services operating on them, like Backup or Database Migration Service, are named 'AWS' per community naming convention.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:what-is-object-storage",
      "database": "Oracle Database",
      "date": "2020-09-18",
      "employment_period": "dbi-services-2020",
      "title": "What is Object Storage?",
      "url": "https://www.dbi-services.com/blog/what-is-object-storage/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "He is an Oracle DBA and came to this page about Oracle Cloud Object Storage: Overview of Object Storage Oracle Cloud Infrastructure offers two distinct storage class tiers to address the need for both performant, frequently accessed “hot” storage, and less frequently accessed “cold” storage.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:amazon-aurora-serverless-postgresql-compatibility",
      "database": "Amazon Aurora",
      "date": "2020-09-20",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora Serverless (PostgreSQL compatibility)",
      "url": "https://www.dbi-services.com/blog/amazon-aurora-serverless-postgresql-compatibility/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora Serverless scales on hard limits only (the instance size) but has the advantage to stop completely all compute resource when you chose the “pause” option.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:amazon-aurora-serverless-postgresql-compatibility",
      "database": "PostgreSQL",
      "date": "2020-09-20",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora Serverless (PostgreSQL compatibility)",
      "url": "https://www.dbi-services.com/blog/amazon-aurora-serverless-postgresql-compatibility/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora Serverless (PostgreSQL compatibility).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-maa-reference-architecture-and-ha-dr-rto-rpo",
      "database": "Oracle Database",
      "date": "2020-09-26",
      "employment_period": "dbi-services-2020",
      "title": "Oracle MAA reference architecture and HA, DR, RTO, RPO",
      "url": "https://www.dbi-services.com/blog/oracle-maa-reference-architecture-and-ha-dr-rto-rpo/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle MAA reference architecture and HA, DR, RTO, RPO.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-adb-jupyter",
      "database": "Oracle Database",
      "date": "2020-09-30",
      "employment_period": "dbi-services-2020",
      "title": "Oracle ADB from a Jupyter Notebook",
      "url": "https://www.dbi-services.com/blog/oracle-adb-jupyter/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle ADB from a Jupyter Notebook.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:cluster",
      "database": "Oracle Database",
      "date": "2020-10-07",
      "employment_period": "dbi-services-2020",
      "title": "CLUSTER",
      "url": "https://www.dbi-services.com/blog/cluster/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "That’s how I know how great it is that he moves to Oracle, in the team that manages the products which are the bricks for the future (cloud managed ‘autonomous’ database).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ycsb-nosql-benchmark-on-oracle-database",
      "database": "Cassandra",
      "date": "2020-10-12",
      "employment_period": "dbi-services-2020",
      "title": "YCSB (NoSQL benchmark) on Oracle Database",
      "url": "https://www.dbi-services.com/blog/ycsb-nosql-benchmark-on-oracle-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YB also provides a Cassandra-like NoSQL API: CQL and here is how to run YCSB on it: On Oracle Database, now that I have added the support for FETCH FIRST, the jdbc client can be used on a relational table.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ycsb-nosql-benchmark-on-oracle-database",
      "database": "Oracle Database",
      "date": "2020-10-12",
      "employment_period": "dbi-services-2020",
      "title": "YCSB (NoSQL benchmark) on Oracle Database",
      "url": "https://www.dbi-services.com/blog/ycsb-nosql-benchmark-on-oracle-database/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here is how to download the latest relase of YCSB: cd /var/tmp release=\"$(curl | awk '/[/]download[/]/{print $NF}' )\" curl --location \"$release\" | tar -zxvf - However, my Pull Request to support the FETCH FIRST n ROWS ONLY has been merged but is not yet included in the release, so better compile from source if you want to use YCSB on Oracle Database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ycsb-nosql-benchmark-on-oracle-database",
      "database": "PostgreSQL",
      "date": "2020-10-12",
      "employment_period": "dbi-services-2020",
      "title": "YCSB (NoSQL benchmark) on Oracle Database",
      "url": "https://www.dbi-services.com/blog/ycsb-nosql-benchmark-on-oracle-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Among the most advanced converged databases: On PostgreSQL you can use the JDBC client or the “ postgrenosql ” that are already there in the master branch On YugaByteDB you can do the same because it is compatible with PostgreSQL with the YSQL API.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:ycsb-nosql-benchmark-on-oracle-database",
      "database": "YugabyteDB",
      "date": "2020-10-12",
      "employment_period": "dbi-services-2020",
      "title": "YCSB (NoSQL benchmark) on Oracle Database",
      "url": "https://www.dbi-services.com/blog/ycsb-nosql-benchmark-on-oracle-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Among the most advanced converged databases: On PostgreSQL you can use the JDBC client or the “ postgrenosql ” that are already there in the master branch On YugaByteDB you can do the same because it is compatible with PostgreSQL with the YSQL API.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:what-is-a-database-backup-back-to-the-basics",
      "database": "Oracle Database",
      "date": "2020-10-22",
      "employment_period": "dbi-services-2020",
      "title": "What is a database backup (back to the basics)",
      "url": "https://www.dbi-services.com/blog/what-is-a-database-backup-back-to-the-basics/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A logical export like pg_dump or Oracle expdp is not a database backup, because it alone cannot support point-in-time recovery to any moment between the last export and a later failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:what-is-a-database-backup-back-to-the-basics",
      "database": "PostgreSQL",
      "date": "2020-10-22",
      "employment_period": "dbi-services-2020",
      "title": "What is a database backup (back to the basics)",
      "url": "https://www.dbi-services.com/blog/what-is-a-database-backup-back-to-the-basics/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "TL;DR: do not consider a dump (like PostgreSQL pg_dump or Oracle expdp) as a database backup do not consider that your backup is successful if you didn’t test recovery databases provide physical database backups, easy and safe to restore and recover to any point-in-time between first backup and point of failure managed databases provide an easy recovery interface, but don’t trust it before you try it and… I’ve writte",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-in-aws-clearing-the-doubts",
      "database": "Amazon Aurora",
      "date": "2020-11-09",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://www.dbi-services.com/blog/postgresql-in-aws-clearing-the-doubts/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL may provide lower latency on block storage, and is probably cheaper (but Aurora serverless can also reduce the cost for rarely used databases).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-in-aws-clearing-the-doubts",
      "database": "Amazon DynamoDB",
      "date": "2020-11-09",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://www.dbi-services.com/blog/postgresql-in-aws-clearing-the-doubts/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Rather than storing the database files in EBS block storage attached to the database node where the instance is running, like all other RDS databases, the database service is split into separate (micro)services for the compute (EC2) and the storage (distributed over multiple AZ to provide High Availability, similar to the DynamoDB storage).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-in-aws-clearing-the-doubts",
      "database": "MySQL",
      "date": "2020-11-09",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://www.dbi-services.com/blog/postgresql-in-aws-clearing-the-doubts/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon modified a lot the lower layers of the code but kept the upper layer to stay compatible with MySQL (version 5) in order to ease the application migration to Aurora.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-in-aws-clearing-the-doubts",
      "database": "Oracle Database",
      "date": "2020-11-09",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://www.dbi-services.com/blog/postgresql-in-aws-clearing-the-doubts/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Cloud provides no managed service for PostgreSQL but only a Bitnami image .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-in-aws-clearing-the-doubts",
      "database": "PostgreSQL",
      "date": "2020-11-09",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://www.dbi-services.com/blog/postgresql-in-aws-clearing-the-doubts/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 4,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [
        "regression"
      ],
      "evidence_excerpt": "====================================================== The differences that caused some tests to fail can be viewed in the file \"/var/tmp/postgres/src/test/regress/regression.diffs\".",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-dynamodb-s3-oci-autonomous-database",
      "database": "Amazon DynamoDB",
      "date": "2020-11-16",
      "employment_period": "dbi-services-2020",
      "title": "AWS DynamoDB -> S3 -> OCI Autonomous Database",
      "url": "https://www.dbi-services.com/blog/aws-dynamodb-s3-oci-autonomous-database/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example with two recent news from past months: Oracle: Use any AWS S3 compatible object store with Autonomous Database AWS: Export Amazon DynamoDB Table Data to Your Data Lake in Amazon S3, No Code Writing Required Imagine that your application stores some data into DynamoDB because it is one of the easiest serverless datastore that can scale to millions of key-value queries per second with great availabil",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-dynamodb-s3-oci-autonomous-database",
      "database": "Oracle Database",
      "date": "2020-11-16",
      "employment_period": "dbi-services-2020",
      "title": "AWS DynamoDB -> S3 -> OCI Autonomous Database",
      "url": "https://www.dbi-services.com/blog/aws-dynamodb-s3-oci-autonomous-database/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "AWS's no-code DynamoDB-to-S3 export combined with Oracle Autonomous Database's external table support lets Oracle SQL query DynamoDB-exported JSON files directly from an S3-compatible object store.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:recovery-in-the-%e2%98%81-with-oracle-autonomous-database",
      "database": "Oracle Database",
      "date": "2020-11-18",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Oracle Autonomous Database",
      "url": "https://www.dbi-services.com/blog/recovery-in-the-%e2%98%81-with-oracle-autonomous-database/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Recovery in the ☁ with Oracle Autonomous Database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-burstable-ec2-cloudwatch",
      "database": "Oracle Database",
      "date": "2020-11-23",
      "employment_period": "dbi-services-2020",
      "title": "AWS burstable EC2 and CloudWatch metrics",
      "url": "https://www.dbi-services.com/blog/aws-burstable-ec2-cloudwatch/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database does not benefit a lot from burstable instances because the software license is paid on processor metric, which counts on full vCPU rather than the baseline, so you probably want to use 100% of it as long as you need.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:dynamodb-partiql-i",
      "database": "Amazon DynamoDB",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB PartiQL – part I: INSERT",
      "url": "https://www.dbi-services.com/blog/dynamodb-partiql-i/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is a fundamental concept in DynamoDB: in order to be scalable and predictable, there are no cross-partition operations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524266",
      "database": "Amazon DynamoDB",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB PartiQL – part I: INSERT",
      "url": "https://blog.dbi-services.com/dynamodb-partiql-i/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is a fundamental concept in DynamoDB: in order to be scalable and predictable, there are no cross-partition operations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524267",
      "database": "Oracle Database",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "AWS burstable EC2 and CloudWatch metrics",
      "url": "https://blog.dbi-services.com/aws-burstable-ec2-cloudwatch/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database does not benefit a lot from burstable instances because the software license is paid on processor metric, which counts on full vCPU rather than the baseline, so you probably want to use 100% of it as long as you need.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:524270",
      "database": "Amazon Aurora",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://blog.dbi-services.com/postgresql-in-aws-clearing-the-doubts/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL may provide lower latency on block storage, and is probably cheaper (but Aurora serverless can also reduce the cost for rarely used databases).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524270",
      "database": "Amazon DynamoDB",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://blog.dbi-services.com/postgresql-in-aws-clearing-the-doubts/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Rather than storing the database files in EBS block storage attached to the database node where the instance is running, like all other RDS databases, the database service is split into separate (micro)services for the compute (EC2) and the storage (distributed over multiple AZ to provide High Availability, similar to the DynamoDB storage).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524270",
      "database": "MySQL",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://blog.dbi-services.com/postgresql-in-aws-clearing-the-doubts/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon modified a lot the lower layers of the code but kept the upper layer to stay compatible with MySQL (version 5) in order to ease the application migration to Aurora.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524270",
      "database": "Oracle Database",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://blog.dbi-services.com/postgresql-in-aws-clearing-the-doubts/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "<ul> <li>Oracle Cloud provides no managed service for PostgreSQL but only a <a href=\" rel=\"noopener noreferrer\" target=\"_blank\">Bitnami image</a>.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524270",
      "database": "PostgreSQL",
      "date": "2020-11-24",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL in AWS: clearing the doubts",
      "url": "https://blog.dbi-services.com/postgresql-in-aws-clearing-the-doubts/",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 4,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [
        "regression"
      ],
      "evidence_excerpt": "====================================================== The differences that caused some tests to fail can be viewed in the file \"/var/tmp/postgres/src/test/regress/regression.diffs\".",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dynamodb-partiql-part-ii-select",
      "database": "Amazon DynamoDB",
      "date": "2020-11-25",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB PartiQL – part II: SELECT",
      "url": "https://www.dbi-services.com/blog/dynamodb-partiql-part-ii-select/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB PartiQL – part II: SELECT.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524561",
      "database": "Oracle Database",
      "date": "2020-11-25",
      "employment_period": "dbi-services-2020",
      "title": "SQL101 SQL Basics (NoSQL to SQL) all on Oracle Autonomous Database",
      "url": "https://www.youtube.com/watch?v=-eL-G-9cLVk&ab_channel=FranckPachot",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL101 SQL Basics (NoSQL to SQL) all on Oracle Autonomous Database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:524563",
      "database": "Amazon DynamoDB",
      "date": "2020-11-25",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB PartiQL - part II: SELECT",
      "url": "https://blog.dbi-services.com/dynamodb-partiql-part-ii-select",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB PartiQL - part II: SELECT.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:525153",
      "database": "Oracle Database",
      "date": "2020-11-25",
      "employment_period": "dbi-services-2020",
      "title": "What is a database backup (back to the basics)",
      "url": "https://blog.dbi-services.com/what-is-a-database-backup-back-to-the-basics",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Argues logical dumps such as pg_dump or Oracle expdp should not be considered database backups, and no backup should be trusted until recovery has been tested.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:526025",
      "database": "Amazon DynamoDB",
      "date": "2020-11-26",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB Local: running NoSQL on SQLite",
      "url": "https://blog.dbi-services.com/aws-dynamodb-local/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You know how to run DynamoDB locally, and can even access it with SQL for powerful queries ;)",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:526025",
      "database": "Oracle Database",
      "date": "2020-11-26",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB Local: running NoSQL on SQLite",
      "url": "https://blog.dbi-services.com/aws-dynamodb-local/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL databases have optimization for full table scans, and the database for those 338498 rows is really small: <pre><code> [oracle@cloud aws]$ du -h /var/tmp/DynamoDBLocal/shared-local-instance.db 106M /var/tmp/DynamoDBLocal/shared-local-instance.db </code></pre> Counting the rows is faster from SQLite directly: <pre><code> [oracle@cloud aws]$ time sqlite3 /var/tmp/DynamoDBLocal/shared-local-instance.db \"select count(",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:526025",
      "database": "SQLite",
      "date": "2020-11-26",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB Local: running NoSQL on SQLite",
      "url": "https://blog.dbi-services.com/aws-dynamodb-local/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "SQL databases have optimization for full table scans, and the database for those 338498 rows is really small: <pre><code> [oracle@cloud aws]$ du -h /var/tmp/DynamoDBLocal/shared-local-instance.db 106M /var/tmp/DynamoDBLocal/shared-local-instance.db </code></pre> Counting the rows is faster from SQLite directly: <pre><code> [oracle@cloud aws]$ time sqlite3 /var/tmp/DynamoDBLocal/shared-local-instance.db \"select count(",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dynamodb-scan-pagination",
      "database": "Amazon DynamoDB",
      "date": "2020-11-30",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB Scan (and why 128.5 RCU?)",
      "url": "https://www.dbi-services.com/blog/dynamodb-scan-pagination/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "advantage",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The advantage of DynamoDB scan operation comes when you need to read a large part of the table because it can read many items with one call, with 1MB read I/O size on the storage… Yes, 1MB, the same as what the db_file_multiblock_read_count default value has always set for maximum I/O size behind in Oracle for full table scans.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:dynamodb-scan-pagination",
      "database": "Oracle Database",
      "date": "2020-11-30",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB Scan (and why 128.5 RCU?)",
      "url": "https://www.dbi-services.com/blog/dynamodb-scan-pagination/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The advantage of DynamoDB scan operation comes when you need to read a large part of the table because it can read many items with one call, with 1MB read I/O size on the storage… Yes, 1MB, the same as what the db_file_multiblock_read_count default value has always set for maximum I/O size behind in Oracle for full table scans.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:528717",
      "database": "Amazon DynamoDB",
      "date": "2020-11-30",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB Scan (and why 128.5 RCU?)",
      "url": "https://blog.dbi-services.com/dynamodb-scan-pagination/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "advantage",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The advantage of DynamoDB scan operation comes when you need to read a large part of the table because it can read many items with one call, with 1MB read I/O size on the storage...",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:database-announcements-at-reinvent-2020",
      "database": "Amazon Aurora",
      "date": "2020-12-03",
      "employment_period": "dbi-services-2020",
      "title": "Database announcements at re:Invent 2020",
      "url": "https://www.dbi-services.com/blog/database-announcements-at-reinvent-2020/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "Aurora has a bad reputation in the PostgreSQL community, taking the community code, making money with it, and not giving back their optimizations.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:database-announcements-at-reinvent-2020",
      "database": "Microsoft SQL Server",
      "date": "2020-12-03",
      "employment_period": "dbi-services-2020",
      "title": "Database announcements at re:Invent 2020",
      "url": "https://www.dbi-services.com/blog/database-announcements-at-reinvent-2020/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Given the powerful extensibility of PostgreSQL, AWS has built some extensions to understand T-SQL, and specific SQL Server datatype behaviour.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:database-announcements-at-reinvent-2020",
      "database": "MySQL",
      "date": "2020-12-03",
      "employment_period": "dbi-services-2020",
      "title": "Database announcements at re:Invent 2020",
      "url": "https://www.dbi-services.com/blog/database-announcements-at-reinvent-2020/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "AWS re:Invent 2020 introduced Babelfish for Aurora, Aurora Serverless v2, and Glue Elastic Views, alongside RDS Proxy connection pooling and Graviton2 processor support for RDS PostgreSQL and MySQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:database-announcements-at-reinvent-2020",
      "database": "PostgreSQL",
      "date": "2020-12-03",
      "employment_period": "dbi-services-2020",
      "title": "Database announcements at re:Invent 2020",
      "url": "https://www.dbi-services.com/blog/database-announcements-at-reinvent-2020/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Given the powerful extensibility of PostgreSQL, AWS has built some extensions to understand T-SQL, and specific SQL Server datatype behaviour.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aurora-serverless-v2-cpu",
      "database": "Amazon Aurora",
      "date": "2020-12-07",
      "employment_period": "dbi-services-2020",
      "title": "Aurora Serverless v2 (preview) – CPU",
      "url": "https://www.dbi-services.com/blog/aurora-serverless-v2-cpu/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Serverless v2 (preview) – CPU.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aurora-serverless-v2-ram",
      "database": "Amazon Aurora",
      "date": "2020-12-07",
      "employment_period": "dbi-services-2020",
      "title": "Aurora Serverless v2 (preview) – RAM",
      "url": "https://www.dbi-services.com/blog/aurora-serverless-v2-ram/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Serverless v2 (preview) – RAM.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:536935",
      "database": "Amazon Aurora",
      "date": "2020-12-08",
      "employment_period": "dbi-services-2020",
      "title": "Aurora Serverless v2 (preview) - RAM",
      "url": "https://blog.dbi-services.com/aurora-serverless-v2-ram",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Serverless v2 (preview) - RAM.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:536936",
      "database": "Amazon Aurora",
      "date": "2020-12-08",
      "employment_period": "dbi-services-2020",
      "title": "Aurora Serverless v2 (preview) - CPU",
      "url": "https://blog.dbi-services.com/aurora-serverless-v2-cpu/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Serverless v2 (preview) - CPU.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql",
      "database": "Amazon Aurora",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://www.dbi-services.com/blog/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Actually, even with databases with fast point-in-time recovery (PITR), like Oracle Flashback Database or Aurora Backtrack, I did in-place PITR only for special cases: CI test database, or prod during an offline application release.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql",
      "database": "MySQL",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://www.dbi-services.com/blog/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL I have created a PostgreSQL instance on the Google Cloud (the service “Google Cloud SQL” offers MySQL, PostgreSQL and SQLServer): You can see that I enabled “Automate backups” with a time window where they can occur (daily backups) by keeping the default.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql",
      "database": "Oracle Database",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://www.dbi-services.com/blog/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Actually, even with databases with fast point-in-time recovery (PITR), like Oracle Flashback Database or Aurora Backtrack, I did in-place PITR only for special cases: CI test database, or prod during an offline application release.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql",
      "database": "PostgreSQL",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://www.dbi-services.com/blog/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "better",
        "good",
        "improvement"
      ],
      "critical_signals": [],
      "evidence_excerpt": "What I would see as a nice improvement would be a higher advocacy for point-in-time recovery, a big warning when a change requires the restart of the instance, better messages when something fails besides PostgreSQL, and a no-data-loss possibility to clone the current state even when the instance is broken.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:539983",
      "database": "Amazon Aurora",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://blog.dbi-services.com/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Actually, even with databases with fast point-in-time recovery (PITR), like Oracle Flashback Database or Aurora Backtrack, I did in-place PITR only for special cases: CI test database, or prod during an offline application release.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:539983",
      "database": "MySQL",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://blog.dbi-services.com/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "<h3>PostgreSQL</h3> I have created a PostgreSQL instance on the Google Cloud (the service \"Google Cloud SQL\" offers MySQL, PostgreSQL and SQLServer): <a href=\" src=\" alt=\"\" width=\"1197\" height=\"916\" class=\"aligncenter size-full wp-image-45972\" /></a> You can see that I enabled \"Automate backups\" with a time window where they can occur (daily backups) by keeping the default.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:539983",
      "database": "Oracle Database",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://blog.dbi-services.com/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Actually, even with databases with fast point-in-time recovery (PITR), like Oracle Flashback Database or Aurora Backtrack, I did in-place PITR only for special cases: CI test database, or prod during an offline application release.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:539983",
      "database": "PostgreSQL",
      "date": "2020-12-11",
      "employment_period": "dbi-services-2020",
      "title": "Recovery in the ☁ with Google Cloud SQL (PostgreSQL)",
      "url": "https://blog.dbi-services.com/recovery-in-the-%e2%98%81-with-google-cloud-sql-postgresql/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "better",
        "good",
        "improvement"
      ],
      "critical_signals": [],
      "evidence_excerpt": "What I would see as a nice improvement would be a higher advocacy for point-in-time recovery, a big warning when a change requires the restart of the instance, better messages when something fails besides PostgreSQL, and a no-data-loss possibility to clone the current state even when the instance is broken.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:amazon-aurora-calling-a-lambda-from-a-trigger",
      "database": "Amazon Aurora",
      "date": "2020-12-14",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora: calling a lambda from a trigger",
      "url": "https://www.dbi-services.com/blog/amazon-aurora-calling-a-lambda-from-a-trigger/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora: calling a lambda from a trigger.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:amazon-aurora-calling-a-lambda-from-a-trigger",
      "database": "MySQL",
      "date": "2020-12-14",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora: calling a lambda from a trigger",
      "url": "https://www.dbi-services.com/blog/amazon-aurora-calling-a-lambda-from-a-trigger/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora MySQL's mysql.lambda_async() call lets a trigger invoke a Lambda function on any DML, so an unencapsulated AFTER UPDATE trigger risks firing unwanted notifications during bulk fixes or replication replay.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:amazon-aurora-calling-a-lambda-from-a-trigger",
      "database": "Oracle Database",
      "date": "2020-12-14",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora: calling a lambda from a trigger",
      "url": "https://www.dbi-services.com/blog/amazon-aurora-calling-a-lambda-from-a-trigger/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It may sound obvious but if you come from Oracle Database you would have used Advanced Queuing where the queue is stored in a RDBMS table and then benefit from sharing the same transaction as the submitter.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-write-consistency-bug-and-multi-thread-de-queuing",
      "database": "Oracle Database",
      "date": "2020-12-14",
      "employment_period": "dbi-services-2020",
      "title": "Oracle write consistency bug and multi-thread de-queuing",
      "url": "https://www.dbi-services.com/blog/oracle-write-consistency-bug-and-multi-thread-de-queuing/",
      "source": "dbi-services",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 6,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Oracle write consistency bug and multi-thread de-queuing.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-spd-status-on-two-learning-paths",
      "database": "Oracle Database",
      "date": "2020-12-19",
      "employment_period": "dbi-services-2020",
      "title": "Oracle SPD status on two learning paths",
      "url": "https://www.dbi-services.com/blog/oracle-spd-status-on-two-learning-paths/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle SPD status on two learning paths.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dynamodb-scan-the-most-efficient-operation-%f0%9f%98%89",
      "database": "Amazon DynamoDB",
      "date": "2020-12-20",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB Scan: the most efficient operation 😉",
      "url": "https://www.dbi-services.com/blog/dynamodb-scan-the-most-efficient-operation-%f0%9f%98%89/",
      "source": "dbi-services",
      "evaluation": 2,
      "positive_weight": 7,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "advantage",
        "efficient",
        "faster",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB Scan: the most efficient operation 😉.",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:password-rolling-change-before-oracle-21c",
      "database": "Oracle Database",
      "date": "2020-12-27",
      "employment_period": "dbi-services-2020",
      "title": "Password rolling change before Oracle 21c",
      "url": "https://www.dbi-services.com/blog/password-rolling-change-before-oracle-21c/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Password rolling change before Oracle 21c.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pressure-stall-information-on-autonomous-linux",
      "database": "Oracle Database",
      "date": "2021-01-09",
      "employment_period": "dbi-services-2020",
      "title": "Pressure Stall Information on Autonomous Linux",
      "url": "https://www.dbi-services.com/blog/pressure-stall-information-on-autonomous-linux/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Autonomous Linux ships a kernel compiled with PSI support but disabled by default, so enabling Pressure Stall Information requires adding psi=1 to the boot command line through a custom tuned profile.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:19c-serverless-logon-trigger",
      "database": "Oracle Database",
      "date": "2021-01-31",
      "employment_period": "dbi-services-2020",
      "title": "19c serverless logon trigger",
      "url": "https://www.dbi-services.com/blog/19c-serverless-logon-trigger/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle's SESSION_SETTINGS clause inside a client connection string, such as (SESSION_SETTINGS=(optimizer_mode=first_rows_10)), applies ALTER SESSION parameters at connect time without needing a logon trigger.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:google_insights",
      "database": "Oracle Database",
      "date": "2021-01-31",
      "employment_period": "dbi-services-2020",
      "title": "Google Cloud SQL Insights: ASH, plans and statement tagging",
      "url": "https://www.dbi-services.com/blog/google_insights/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database has been instrumented for a long time and has proven how the ASH approach is efficient: sampling of active sessions, displaying by Average Active Session on the wait class dimension, on a time axis.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:google_insights",
      "database": "PostgreSQL",
      "date": "2021-01-31",
      "employment_period": "dbi-services-2020",
      "title": "Google Cloud SQL Insights: ASH, plans and statement tagging",
      "url": "https://www.dbi-services.com/blog/google_insights/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Google Cloud SQL Insights samples PostgreSQL wait events for CPU, I/O, and lock contention every minute with 7-day retention, mirroring the ASH sampling model long used by Oracle AWR and RDS Performance Insights.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:odasim",
      "database": "Oracle Database",
      "date": "2021-02-03",
      "employment_period": "dbi-services-2020",
      "title": "Learn ODA on Oracle Cloud",
      "url": "https://www.dbi-services.com/blog/odasim/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Learn ODA on Oracle Cloud.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-on-linux-what-is-cached",
      "database": "PostgreSQL",
      "date": "2021-02-14",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL on Linux: what is cached?",
      "url": "https://www.dbi-services.com/blog/postgresql-on-linux-what-is-cached/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL on Linux: what is cached?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:grafana-sql-and-in-list-for-multi-value-variable",
      "database": "PostgreSQL",
      "date": "2021-02-18",
      "employment_period": "dbi-services-2020",
      "title": "Grafana, SQL and IN() list for multi-value variable",
      "url": "https://www.dbi-services.com/blog/grafana-sql-and-in-list-for-multi-value-variable/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The problem to solve: IN() list in SQL from a multi-value variable For this example I’ve created a PostgreSQL database in Google Cloud SQL , loaded sample data from Gerald Venzl and a free grafana cloud service .",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-db-on-azure-with-multitenant-option",
      "database": "Oracle Database",
      "date": "2021-02-22",
      "employment_period": "dbi-services-2020",
      "title": "Oracle DB on Azure with Multitenant Option",
      "url": "https://www.dbi-services.com/blog/oracle-db-on-azure-with-multitenant-option/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 18,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "Except that Oracle makes it two times more expensive by accepting to license the processor metric on vCPUs at the condition that the Intel core factor is not applied.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-rolling-invalidate-window-exceeded3",
      "database": "Oracle Database",
      "date": "2021-02-24",
      "employment_period": "dbi-services-2020",
      "title": "Oracle Rolling Invalidate Window Exceeded(3)",
      "url": "https://www.dbi-services.com/blog/oracle-rolling-invalidate-window-exceeded3/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Rolling Invalidate Window Exceeded(3).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-postgresql-on-graviton2",
      "database": "PostgreSQL",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "AWS: PostgreSQL on Graviton2",
      "url": "https://www.dbi-services.com/blog/aws-postgresql-on-graviton2/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "The software is free and the EC2 running hours for Graviton2 is 20% cheaper: m5d.2xlarge x86_64 Xeon EC2 cost: $0.504/hr m6gd.2xlarge aarch64 ARM EC2 cost: $0.403/hr The compilation time for the PostgreSQL sources was 11% slower on ARM: 3 minutes 39 seconds vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:629216",
      "database": "PostgreSQL",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "AWS: PostgreSQL on Graviton2",
      "url": "https://blog.dbi-services.com/aws-postgresql-on-graviton2/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "The software is free and the EC2 running hours for Graviton2 is 20% cheaper: <ul> <li>m5d.2xlarge x86_64 Xeon EC2 cost: $0.504/hr</li> <li>m6gd.2xlarge aarch64 ARM EC2 cost: $0.403/hr</li> </ul> The compilation time for the PostgreSQL sources was 11% slower on ARM: 3 minutes 39 seconds vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:629217",
      "database": "PostgreSQL",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "Grafana, SQL and IN() list for multi-value variable",
      "url": "https://blog.dbi-services.com/grafana-sql-and-in-list-for-multi-value-variable",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "<h3>The problem to solve: IN() list in SQL from a multi-value variable</h3> For this example I've created a <a href=\" rel=\"noopener\" target=\"_blank\">PostgreSQL database in Google Cloud SQL</a>, loaded <a href=\" rel=\"noopener\" target=\"_blank\">sample data from Gerald Venzl</a> and a <a href=\" rel=\"noopener\" target=\"_blank\">free grafana cloud service</a>.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:629218",
      "database": "PostgreSQL",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL on Linux: what is cached?",
      "url": "https://blog.dbi-services.com/postgresql-on-linux-what-is-cached/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL on Linux: what is cached?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:629219",
      "database": "Oracle Database",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "Pressure Stall Information on Autonomous Linux",
      "url": "https://blog.dbi-services.com/pressure-stall-information-on-autonomous-linux",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows Pressure Stall Information is compiled into Oracle's Autonomous Linux kernel, based on OEL 7.9, but disabled by default, walking through checking and enabling it.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:629222",
      "database": "Amazon DynamoDB",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB Scan: the most efficient operation 😉",
      "url": "https://blog.dbi-services.com/dynamodb-scan-the-most-efficient-operation-%f0%9f%98%89/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 8,
      "critical_weight": 3,
      "mixed": true,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "advantage",
        "efficient",
        "faster",
        "possesses stated advantages"
      ],
      "critical_signals": [
        "worse",
        "worse side of comparison"
      ],
      "evidence_excerpt": "Provocatively argues that blanket advice to avoid DynamoDB Scan operations can push developers toward workarounds performing even worse than a well-understood Scan.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:629224",
      "database": "Amazon Aurora",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora: calling a lambda from a trigger",
      "url": "https://blog.dbi-services.com/amazon-aurora-calling-a-lambda-from-a-trigger",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora: calling a lambda from a trigger.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:629224",
      "database": "MySQL",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora: calling a lambda from a trigger",
      "url": "https://blog.dbi-services.com/amazon-aurora-calling-a-lambda-from-a-trigger",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Documents calling mysql.lambda_async() from an Amazon Aurora MySQL trigger to push a notification to AWS Lambda on data change, cautioning about its async behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:629224",
      "database": "Oracle Database",
      "date": "2021-03-08",
      "employment_period": "dbi-services-2020",
      "title": "Amazon Aurora: calling a lambda from a trigger",
      "url": "https://blog.dbi-services.com/amazon-aurora-calling-a-lambda-from-a-trigger",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It may sound obvious but if you come from Oracle Database you would have used Advanced Queuing where the queue is stored in a RDBMS table and then benefit from sharing the same transaction as the submitter.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:aws-postgresql-on-graviton2-aarch64",
      "database": "PostgreSQL",
      "date": "2021-03-10",
      "employment_period": "dbi-services-2020",
      "title": "AWS: PostgreSQL on Graviton2 with newer GCC",
      "url": "https://www.dbi-services.com/blog/aws-postgresql-on-graviton2-aarch64/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Of course, there can be more optimisations as mentioned in I’ll recompile with the recommended flags ( cd postgres CFLAGS=\"-march=armv8.2-a+fp16+rcpc+dotprod+crypto -mtune=neoverse-n1 -fsigned-char\" ./configure make clean make make install ) I didn’t make any difference in the PGIO run.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:a-vpc-is-a-private-cloud-in-a-public-cloud",
      "database": "Oracle Database",
      "date": "2021-03-15",
      "employment_period": "dbi-services-2020",
      "title": "A VPC is a private cloud in a public cloud",
      "url": "https://www.dbi-services.com/blog/a-vpc-is-a-private-cloud-in-a-public-cloud/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A cloud VPC in AWS and Google, Virtual Network in Azure, or VCN in Oracle plays the role of on-premises VLANs and subnets, while services like S3 bypass this virtual network layer entirely.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-testing-resource-manager-plans",
      "database": "Oracle Database",
      "date": "2021-03-16",
      "employment_period": "dbi-services-2020",
      "title": "Oracle – testing resource manager plans?",
      "url": "https://www.dbi-services.com/blog/oracle-testing-resource-manager-plans/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle – testing resource manager plans?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:foreign-keys-in-mysql-nosql-newsql",
      "database": "MySQL",
      "date": "2021-03-18",
      "employment_period": "dbi-services-2020",
      "title": "Foreign Keys in MySQL, SQL, NoSQL, NewSQL",
      "url": "https://www.dbi-services.com/blog/foreign-keys-in-mysql-nosql-newsql/",
      "source": "dbi-services",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "named source of disadvantages"
      ],
      "evidence_excerpt": "Foreign Keys in MySQL, SQL, NoSQL, NewSQL.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:641382",
      "database": "MySQL",
      "date": "2021-03-21",
      "employment_period": "dbi-services-2020",
      "title": "Foreign Keys in MySQL, NoSQL, NewSQL (YugaByteDB)",
      "url": "https://dev.to/yugabyte/foreign-keys-in-mysql-sql-nosql-newsql-yugabytedb-3j0n",
      "source": "dev.to",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 7,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "bad",
        "limitation",
        "named source of disadvantages",
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "Traces the 'foreign keys are bad' folklore to MySQL's historically weak referential-integrity implementation, arguing it reflects a MySQL limitation, not SQL itself.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:641382",
      "database": "PostgreSQL",
      "date": "2021-03-21",
      "employment_period": "dbi-services-2020",
      "title": "Foreign Keys in MySQL, NoSQL, NewSQL (YugaByteDB)",
      "url": "https://dev.to/yugabyte/foreign-keys-in-mysql-sql-nosql-newsql-yugabytedb-3j0n",
      "source": "dev.to",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 3,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "--- title: Foreign Keys in MySQL, NoSQL, NewSQL (YugaByteDB) published: true tags: ForeignKey, SQL, YugaByteDB, postgres canonical: --- In the NoSQL times, it was common to hear thinks like \"SQL is bad\", \"joins are bad\", \"foreign keys are bad\".",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:641382",
      "database": "YugabyteDB",
      "date": "2021-03-21",
      "employment_period": "dbi-services-2020",
      "title": "Foreign Keys in MySQL, NoSQL, NewSQL (YugaByteDB)",
      "url": "https://dev.to/yugabyte/foreign-keys-in-mysql-sql-nosql-newsql-yugabytedb-3j0n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Foreign Keys in MySQL, NoSQL, NewSQL (YugaByteDB).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:should-cpu-intensive-logic-be-done-in-the-db-or-in-application-server",
      "database": "PostgreSQL",
      "date": "2021-03-25",
      "employment_period": "dbi-services-2020",
      "title": "Should CPU-intensive logic be done in the DB or in application server?",
      "url": "https://www.dbi-services.com/blog/should-cpu-intensive-logic-be-done-in-the-db-or-in-application-server/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Running a Python ROT13 loop a million times through psycopg2 against a 100000-row PostgreSQL table shows database-side processing avoids the round-trip and context-switch cost of moving data to an app tier.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:some-ai-in-oracle-sql_id",
      "database": "Oracle Database",
      "date": "2021-04-01",
      "employment_period": "dbi-services-2020",
      "title": "Some Artificial Intuition in Oracle SQL_ID?",
      "url": "https://www.dbi-services.com/blog/some-ai-in-oracle-sql_id/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Some Artificial Intuition in Oracle SQL_ID?.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:k8s-on-windows-virtualbox",
      "database": "Oracle Database",
      "date": "2021-04-12",
      "employment_period": "dbi-services-2020",
      "title": "K8s on Windows/VirtualBox",
      "url": "https://www.dbi-services.com/blog/k8s-on-windows-virtualbox/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Install Virtualbox I use Oracle VirtuaBox because I’m a big fan of Oracle products, especially when they are good and free.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:k8s-on-windows-virtualbox",
      "database": "PostgreSQL",
      "date": "2021-04-12",
      "employment_period": "dbi-services-2020",
      "title": "K8s on Windows/VirtualBox",
      "url": "https://www.dbi-services.com/blog/k8s-on-windows-virtualbox/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But, as this SQL API is fully compatible with PostgreSQL I can just forward the YSQL port from one of the table servers: kubectl --namespace franck-yb port-forward svc/yb-tservers 5433:5433 With this I can connect with psql, DBeaver, or any PostgreSQL client as YugabyteDB is fully postgres-compatible: C:\\Users\\fpa> psql -h localhost -p 5433 -U yugabyte psql (12.6, server 11.2-YB-2.5.3.1-b0) Type \"help\" for help.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:k8s-on-windows-virtualbox",
      "database": "YugabyteDB",
      "date": "2021-04-12",
      "employment_period": "dbi-services-2020",
      "title": "K8s on Windows/VirtualBox",
      "url": "https://www.dbi-services.com/blog/k8s-on-windows-virtualbox/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But, as this SQL API is fully compatible with PostgreSQL I can just forward the YSQL port from one of the table servers: kubectl --namespace franck-yb port-forward svc/yb-tservers 5433:5433 With this I can connect with psql, DBeaver, or any PostgreSQL client as YugabyteDB is fully postgres-compatible: C:\\Users\\fpa> psql -h localhost -p 5433 -U yugabyte psql (12.6, server 11.2-YB-2.5.3.1-b0) Type \"help\" for help.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:661262",
      "database": "Oracle Database",
      "date": "2021-04-12",
      "employment_period": "dbi-services-2020",
      "title": "K8s on Windows/VirtualBox (and a DB)",
      "url": "https://dev.to/yugabyte/k8s-on-windows-virtualbox-1cj8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "# Install Virtualbox I use Oracle VirtuaBox because I'm a big fan of Oracle products, especially when they are good and free.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:661262",
      "database": "PostgreSQL",
      "date": "2021-04-12",
      "employment_period": "dbi-services-2020",
      "title": "K8s on Windows/VirtualBox (and a DB)",
      "url": "https://dev.to/yugabyte/k8s-on-windows-virtualbox-1cj8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But, as this SQL API is fully compatible with PostgreSQL I can just forward the YSQL port from one of the table servers: ``` kubectl --namespace franck-yb port-forward svc/yb-tservers 5433:5433 ``` With this I can connect with psql, DBeaver, or any PostgreSQL client as YugabyteDB is fully postgres-compatible: ``` C:\\Users\\fpa> psql -h localhost -p 5433 -U yugabyte psql (12.6, server 11.2-YB-2.5.3.1-b0) Type \"help\" fo",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:661262",
      "database": "YugabyteDB",
      "date": "2021-04-12",
      "employment_period": "dbi-services-2020",
      "title": "K8s on Windows/VirtualBox (and a DB)",
      "url": "https://dev.to/yugabyte/k8s-on-windows-virtualbox-1cj8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Installs Oracle VirtualBox to run Kubernetes on a Windows laptop hosting YugabyteDB, showing a real scale-up-and-down SQL database rather than a Hello World demo.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes",
      "database": "Amazon Aurora",
      "date": "2021-04-15",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB / Aurora: sparse and partial indexes",
      "url": "https://www.dbi-services.com/blog/dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB / Aurora: sparse and partial indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes",
      "database": "Amazon DynamoDB",
      "date": "2021-04-15",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB / Aurora: sparse and partial indexes",
      "url": "https://www.dbi-services.com/blog/dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB / Aurora: sparse and partial indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes",
      "database": "PostgreSQL",
      "date": "2021-04-15",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB / Aurora: sparse and partial indexes",
      "url": "https://www.dbi-services.com/blog/dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Loading a 25GB RNA dataset into Aurora PostgreSQL shows a covering index redundantly stores extra columns to avoid heap access, while a partial index excludes rows to keep the index itself smaller.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pass-a-variable-to-a-trigger-in-postgresql",
      "database": "Oracle Database",
      "date": "2021-04-22",
      "employment_period": "dbi-services-2020",
      "title": "Pass a variable to a trigger in PostgreSQL",
      "url": "https://www.dbi-services.com/blog/pass-a-variable-to-a-trigger-in-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Because PostgreSQL lacks Oracle-style session context variables or package globals, passing the acting user's identity into an audit trigger requires a session-scoped workaround instead of a built-in mechanism.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:pass-a-variable-to-a-trigger-in-postgresql",
      "database": "PostgreSQL",
      "date": "2021-04-22",
      "employment_period": "dbi-services-2020",
      "title": "Pass a variable to a trigger in PostgreSQL",
      "url": "https://www.dbi-services.com/blog/pass-a-variable-to-a-trigger-in-postgresql/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Pass a variable to a trigger in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:an-example-of-ora-01152-file-was-not-restored-from-a-sufficiently-old-backup",
      "database": "Oracle Database",
      "date": "2021-04-30",
      "employment_period": "dbi-services-2020",
      "title": "An example of ORA-01152: file … was not restored from a sufficiently old backup",
      "url": "https://www.dbi-services.com/blog/an-example-of-ora-01152-file-was-not-restored-from-a-sufficiently-old-backup/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The file header shows the fuzzy state (FUZZY=Y) and this means that Oracle needs to apply some redo log, starting from the checkpoint SCN 1692602 and until it brings it to a consistent state, at least after the END BACKUP, to the end of fuzziness.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:delphix-and-upgrading-the-clones",
      "database": "Oracle Database",
      "date": "2021-05-05",
      "employment_period": "dbi-services-2020",
      "title": "Delphix and upgrading the clones (Oracle)",
      "url": "https://www.dbi-services.com/blog/delphix-and-upgrading-the-clones/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Delphix and upgrading the clones (Oracle).",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:el-carro-the-oracle-operator-for-kubernetes",
      "database": "Oracle Database",
      "date": "2021-05-14",
      "employment_period": "dbi-services-2020",
      "title": "El Carro: The Oracle Operator for Kubernetes",
      "url": "https://www.dbi-services.com/blog/el-carro-the-oracle-operator-for-kubernetes/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Database connection command: > sqlplus scott/tiger@35.224.235.49:6021/pdb1.gke franck@cloudshell:~ (google-cloud.424242)$ Be patient… it is Oracle, it has a pre-DevOps installation timing… And this is why it is really good to have a standardized way for automation.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698737",
      "database": "Oracle Database",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "El Carro: The Oracle Operator for Kubernetes",
      "url": "https://blog.dbi-services.com/el-carro-the-oracle-operator-for-kubernetes/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "El Carro: The Oracle Operator for Kubernetes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698741",
      "database": "Amazon DynamoDB",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "Amazon DynamoDB: a r(el)ational Glossary",
      "url": "https://blog.dbi-services.com/aws-dynamodb-a-relational-glossary/",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "<h3>Table</h3> This is where using the same name in DynamoDB as in SQL database can mislead to a bad data model.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698743",
      "database": "Amazon Aurora",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB / Aurora: sparse and partial indexes",
      "url": "https://blog.dbi-services.com/dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB / Aurora: sparse and partial indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698743",
      "database": "Amazon DynamoDB",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "DynamoDB / Aurora: sparse and partial indexes",
      "url": "https://blog.dbi-services.com/dynamodb-vs-aurora-vocabulary-sparse-and-partial-indexes/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB / Aurora: sparse and partial indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698745",
      "database": "Oracle Database",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "An example of ORA-01152: file ... was not restored from a sufficiently old backup",
      "url": "https://blog.dbi-services.com/an-example-of-ora-01152-file-was-not-restored-from-a-sufficiently-old-backup/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reproduces Oracle's ORA-01152 'file was not restored from a sufficiently old backup' error with a worked example showing the underlying media-recovery timeline state.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698746",
      "database": "PostgreSQL",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "AWS: PostgreSQL on Graviton2 with newer GCC",
      "url": "https://blog.dbi-services.com/aws-postgresql-on-graviton2-aarch64/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Of course, there can be more optimisations as mentioned in <a href=\" rel=\"noopener\" target=\"_blank\"> I'll recompile with the recommended flags <pre><code>( cd postgres CFLAGS=\"-march=armv8.2-a+fp16+rcpc+dotprod+crypto -mtune=neoverse-n1 -fsigned-char\" ./configure make clean make make install )</code></pre> I didn't make any difference in the PGIO run.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698748",
      "database": "Oracle Database",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "Oracle Standard Edition on AWS ☁ socket arithmetic",
      "url": "https://blog.dbi-services.com/oracle-standard-edition-on-aws-a-socket-arithmetic/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The good thing is that you can even use Oracle hypervisor (OVM or KVM), LPAR or Zones to pin one socket only for the usage of Oracle, and use the other for something else.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698749",
      "database": "Amazon Aurora",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "AWS Aurora IO:XactSync is not a PostgreSQL wait event",
      "url": "https://blog.dbi-services.com/aws-aurora-xactsync-batch-commit/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "AWS Aurora IO:XactSync is not a PostgreSQL wait event.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698749",
      "database": "PostgreSQL",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "AWS Aurora IO:XactSync is not a PostgreSQL wait event",
      "url": "https://blog.dbi-services.com/aws-aurora-xactsync-batch-commit/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In <a href=\" rel=\"noopener noreferrer\" target=\"_blank\">PostgreSQL</a>, as in most RDBMS except for exclusive fast load operations, the user session backend process writes to shared memory buffers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698750",
      "database": "Amazon Aurora",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "AWS Aurora vs. RDS PostgreSQL on frequent commits",
      "url": "https://blog.dbi-services.com/aws-aurora-vs-rds-postgresql/",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 2,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [
        "worse"
      ],
      "evidence_excerpt": "And I mentioned that this is even worse in Aurora where the session process sends directly the WAL to the network storage and waits, at commit, that it is acknowledged by at least 4 out of the 6 replicas.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:698750",
      "database": "PostgreSQL",
      "date": "2021-05-15",
      "employment_period": "dbi-services-2020",
      "title": "AWS Aurora vs. RDS PostgreSQL on frequent commits",
      "url": "https://blog.dbi-services.com/aws-aurora-vs-rds-postgresql/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "RDS PostgreSQL on frequent commits.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-on-aws-graviton2-cflags",
      "database": "PostgreSQL",
      "date": "2021-05-17",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL on AWS Graviton2: CFLAGS",
      "url": "https://www.dbi-services.com/blog/postgresql-on-aws-graviton2-cflags/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL on AWS Graviton2: CFLAGS.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:702580",
      "database": "PostgreSQL",
      "date": "2021-05-19",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL on AWS Graviton2: CFLAGS",
      "url": "https://blog.dbi-services.com/postgresql-on-aws-graviton2-cflags/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL on AWS Graviton2: CFLAGS.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:oracle-oci-arm-free",
      "database": "Oracle Database",
      "date": "2021-05-25",
      "employment_period": "dbi-services-2020",
      "title": "An always free 4 vCPU 3.0 GHz 24 GB RAM on OCI",
      "url": "https://www.dbi-services.com/blog/oracle-oci-arm-free/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Cloud's free tier added a 4 vCPU, 24GB RAM Ampere Altra ARM compute shape at 3.0GHz, always free like the two existing VMs, directly competing with AWS Graviton2's limited free trial.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-on-arm-oci",
      "database": "Oracle Database",
      "date": "2021-05-25",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL on Oracle free tier ARM",
      "url": "https://www.dbi-services.com/blog/postgresql-on-arm-oci/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL on Oracle free tier ARM.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:postgresql-on-arm-oci",
      "database": "PostgreSQL",
      "date": "2021-05-25",
      "employment_period": "dbi-services-2020",
      "title": "PostgreSQL on Oracle free tier ARM",
      "url": "https://www.dbi-services.com/blog/postgresql-on-arm-oci/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "benefit",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The processor is ARM v8.2 with LSE (atomic instructions) and PostgreSQL can benefit from it (see Dramatical Effect of LSE Instructions for PostgreSQL on Graviton2 Instances ).",
      "relation_aware": true
    },
    {
      "publication_id": "dbi-services:amazon-rds-oracle-in-multitenant",
      "database": "Oracle Database",
      "date": "2021-05-26",
      "employment_period": "dbi-services-2020",
      "title": "Amazon RDS Oracle in Multitenant",
      "url": "https://www.dbi-services.com/blog/amazon-rds-oracle-in-multitenant/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I hope we will be able to benefit from multitenant: multiple PDBs (you can have up to 3 without additional license, in any edition), data movement (imagine a cross-region refreshable PDB with ability to switchover…), thin clones… On Performance Insight, we see the CDB level statistics without a PDB dimension (“pdb” is the name of my RDS instance here) Note that in order to connect to your Oracle database, the easiest",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:712288",
      "database": "Oracle Database",
      "date": "2021-05-29",
      "employment_period": "dbi-services-2020",
      "title": "Amazon RDS Oracle in Multitenant",
      "url": "https://blog.dbi-services.com/amazon-rds-oracle-in-multitenant/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon RDS Oracle in Multitenant.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:cloud-cli",
      "database": "Oracle Database",
      "date": "2021-05-30",
      "employment_period": "dbi-services-2020",
      "title": "Cloud CLI",
      "url": "https://www.dbi-services.com/blog/cloud-cli/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Installing AWS, Google, Microsoft, and Oracle CLIs into a shared cloud directory, the AWS configure step favors text output over JSON because some AWS consoles have understated large consumed-capacity numbers.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:see-you-on-polywork-an-new-linkedin",
      "database": "Oracle Database",
      "date": "2021-06-21",
      "employment_period": "dbi-services-2020",
      "title": "See you on Polywork (an new LinkedIn?)",
      "url": "https://www.dbi-services.com/blog/see-you-on-polywork-an-new-linkedin/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Having covered Oracle and other databases extensively since returning to dbi-services, the author departed to join Yugabyte as a developer advocate for its PostgreSQL-compatible distributed NewSQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:see-you-on-polywork-an-new-linkedin",
      "database": "PostgreSQL",
      "date": "2021-06-21",
      "employment_period": "dbi-services-2020",
      "title": "See you on Polywork (an new LinkedIn?)",
      "url": "https://www.dbi-services.com/blog/see-you-on-polywork-an-new-linkedin/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Having covered Oracle and other databases extensively since returning to dbi-services, the author departed to join Yugabyte as a developer advocate for its PostgreSQL-compatible distributed NewSQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:see-you-on-polywork-an-new-linkedin",
      "database": "YugabyteDB",
      "date": "2021-06-21",
      "employment_period": "dbi-services-2020",
      "title": "See you on Polywork (an new LinkedIn?)",
      "url": "https://www.dbi-services.com/blog/see-you-on-polywork-an-new-linkedin/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Having covered Oracle and other databases extensively since returning to dbi-services, the author departed to join Yugabyte as a developer advocate for its PostgreSQL-compatible distributed NewSQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:yugbytedb-on-oci-oke",
      "database": "Oracle Database",
      "date": "2021-06-27",
      "employment_period": "dbi-services-2020",
      "title": "Reduce the complexity: be sharing and open source",
      "url": "https://www.dbi-services.com/blog/yugbytedb-on-oci-oke/",
      "source": "dbi-services",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I like Oracle because, even if closed source, I can have a good knowledge on how the system works.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:yugbytedb-on-oci-oke",
      "database": "PostgreSQL",
      "date": "2021-06-27",
      "employment_period": "dbi-services-2020",
      "title": "Reduce the complexity: be sharing and open source",
      "url": "https://www.dbi-services.com/blog/yugbytedb-on-oci-oke/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is PostgreSQL compatible, well known to provide extensible features while limiting the complexity.",
      "relation_aware": false
    },
    {
      "publication_id": "dbi-services:yugbytedb-on-oci-oke",
      "database": "YugabyteDB",
      "date": "2021-06-27",
      "employment_period": "dbi-services-2020",
      "title": "Reduce the complexity: be sharing and open source",
      "url": "https://www.dbi-services.com/blog/yugbytedb-on-oci-oke/",
      "source": "dbi-services",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is PostgreSQL compatible, well known to provide extensible features while limiting the complexity.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:748052",
      "database": "Oracle Database",
      "date": "2021-07-05",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan and single-table cardinality correction",
      "url": "https://dev.to/yugabyte/pghintplan-and-single-table-cardinality-correction-3j45",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "- The current users in production are on OTLP workload where this is sufficient (In 20 years working on Oracle I've seen nearly all ERP running with RULE optimizer mode, or a small optimizer_index_cost_adj to do the same) - Developers prefer to stay in control of the access path, to avoid surprises, and pg_hint_plan allows to workaround the cases where it can be a problem, and this is the reason for this blog post ##",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:748052",
      "database": "PostgreSQL",
      "date": "2021-07-05",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan and single-table cardinality correction",
      "url": "https://dev.to/yugabyte/pghintplan-and-single-table-cardinality-correction-3j45",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The postgres optimizer can do great estimations when provided the correct statistics, and this cost based optimization is best approach as it adapts to the change of data.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:748052",
      "database": "YugabyteDB",
      "date": "2021-07-05",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan and single-table cardinality correction",
      "url": "https://dev.to/yugabyte/pghintplan-and-single-table-cardinality-correction-3j45",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses pg_hint_plan to override single-table cardinality estimates in a query rather than through exact row counts, tested on a YugabyteDB table with no statistics gathered.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:751605",
      "database": "Oracle Database",
      "date": "2021-07-08",
      "employment_period": "yugabyte-2021",
      "title": "EXPLAIN ANALYZE on COUNT() pushdown",
      "url": "https://dev.to/yugabyte/explain-analyze-on-count-pushdown-2978",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distinguishes offloading a COUNT() aggregation to YugabyteDB's DocDB storage layer, similar to Oracle Exadata's storage offload, from separately offloading reads to replicas.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:751605",
      "database": "YugabyteDB",
      "date": "2021-07-08",
      "employment_period": "yugabyte-2021",
      "title": "EXPLAIN ANALYZE on COUNT() pushdown",
      "url": "https://dev.to/yugabyte/explain-analyze-on-count-pushdown-2978",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distinguishes offloading a COUNT() aggregation to YugabyteDB's DocDB storage layer, similar to Oracle Exadata's storage offload, from separately offloading reads to replicas.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:757965",
      "database": "Oracle Database",
      "date": "2021-07-13",
      "employment_period": "yugabyte-2021",
      "title": "READ COMMITTED anomalies in PostgreSQL",
      "url": "https://dev.to/aws-heroes/read-committed-anomalies-in-postgresql-1ieg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares PostgreSQL's default READ COMMITTED, using SELECT FOR UPDATE for repeatable reads on specific rows, to similar behavior long relied on in Oracle without retry logic.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:757965",
      "database": "PostgreSQL",
      "date": "2021-07-13",
      "employment_period": "yugabyte-2021",
      "title": "READ COMMITTED anomalies in PostgreSQL",
      "url": "https://dev.to/aws-heroes/read-committed-anomalies-in-postgresql-1ieg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "READ COMMITTED anomalies in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:757965",
      "database": "YugabyteDB",
      "date": "2021-07-13",
      "employment_period": "yugabyte-2021",
      "title": "READ COMMITTED anomalies in PostgreSQL",
      "url": "https://dev.to/aws-heroes/read-committed-anomalies-in-postgresql-1ieg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "**YugabyteDB** is PostgreSQL compatible.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:757068",
      "database": "PostgreSQL",
      "date": "2021-07-14",
      "employment_period": "yugabyte-2021",
      "title": "HASH or RANGE in distributed databases",
      "url": "https://dev.to/yugabyte/hash-or-range-on-distributed-databases-12cb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For my examples, on YugabyteDB, I'll load an AVENGERS table: ``` python -c \"from sqlalchemy import create_engine;import pandas;import io;import urllib.request; pandas.read_csv(io.StringIO(urllib.request.urlopen(' errors='ignore'))).to_sql('avengers', create_engine('postgresql+psycopg2://franck:yugabyte@yb1.pachot.net:5433/yugabyte'), if_exists='replace', method='multi')\" ``` This is a short python code that loads the",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:757068",
      "database": "YugabyteDB",
      "date": "2021-07-14",
      "employment_period": "yugabyte-2021",
      "title": "HASH or RANGE in distributed databases",
      "url": "https://dev.to/yugabyte/hash-or-range-on-distributed-databases-12cb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For my examples, on YugabyteDB, I'll load an AVENGERS table: ``` python -c \"from sqlalchemy import create_engine;import pandas;import io;import urllib.request; pandas.read_csv(io.StringIO(urllib.request.urlopen(' errors='ignore'))).to_sql('avengers', create_engine('postgresql+psycopg2://franck:yugabyte@yb1.pachot.net:5433/yugabyte'), if_exists='replace', method='multi')\" ``` This is a short python code that loads the",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:763515",
      "database": "Oracle Database",
      "date": "2021-07-19",
      "employment_period": "yugabyte-2021",
      "title": "jOOQ on YugabyteDB",
      "url": "https://dev.to/yugabyte/jooq-on-yugabytedb-2kl9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Writes a first jOOQ program against YugabyteDB on a 4-vCPU Arm Oracle Cloud instance, confirming no YugabyteDB-specific SQL dialect is needed since it reuses PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:763515",
      "database": "PostgreSQL",
      "date": "2021-07-19",
      "employment_period": "yugabyte-2021",
      "title": "jOOQ on YugabyteDB",
      "url": "https://dev.to/yugabyte/jooq-on-yugabytedb-2kl9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Writes a first jOOQ program against YugabyteDB on a 4-vCPU Arm Oracle Cloud instance, confirming no YugabyteDB-specific SQL dialect is needed since it reuses PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:763515",
      "database": "YugabyteDB",
      "date": "2021-07-19",
      "employment_period": "yugabyte-2021",
      "title": "jOOQ on YugabyteDB",
      "url": "https://dev.to/yugabyte/jooq-on-yugabytedb-2kl9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "jOOQ on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:754392",
      "database": "Oracle Database",
      "date": "2021-07-21",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OCI Free Tier",
      "url": "https://dev.to/yugabyte/yugabytedb-on-oci-free-tier-52cm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Sets up YugabyteDB on a permanently free Oracle Cloud VM, 1/8 OCPU and 1GB RAM, from the Oracle Linux Cloud Developer image, opening the required database ports.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:754392",
      "database": "PostgreSQL",
      "date": "2021-07-21",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OCI Free Tier",
      "url": "https://dev.to/yugabyte/yugabytedb-on-oci-free-tier-52cm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This takes a few seconds and the database is ready, listening on port 5433 for any PostgreSQL compatible client.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:754392",
      "database": "YugabyteDB",
      "date": "2021-07-21",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OCI Free Tier",
      "url": "https://dev.to/yugabyte/yugabytedb-on-oci-free-tier-52cm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB on OCI Free Tier.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:4425",
      "database": "PostgreSQL",
      "date": "2021-07-23",
      "employment_period": "yugabyte-2021",
      "title": "Connecting to YugabyteDB with Arctype, a Collaborative SQL Client",
      "url": "https://www.yugabyte.com/blog/connecting-to-yugabytedb-with-arctype-a-collaborative-sql-client/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is PostgreSQL compatible.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:4425",
      "database": "YugabyteDB",
      "date": "2021-07-23",
      "employment_period": "yugabyte-2021",
      "title": "Connecting to YugabyteDB with Arctype, a Collaborative SQL Client",
      "url": "https://www.yugabyte.com/blog/connecting-to-yugabytedb-with-arctype-a-collaborative-sql-client/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Connecting to YugabyteDB with Arctype, a Collaborative SQL Client.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:772358",
      "database": "PostgreSQL",
      "date": "2021-07-27",
      "employment_period": "yugabyte-2021",
      "title": "SLOB on YugabyteDB",
      "url": "https://dev.to/yugabyte/slob-on-yugabytedb-1a32",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is fast in PostgreSQL but, in a distributed database, the catalog is shared and running a thousand of DDL is long.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:772358",
      "database": "YugabyteDB",
      "date": "2021-07-27",
      "employment_period": "yugabyte-2021",
      "title": "SLOB on YugabyteDB",
      "url": "https://dev.to/yugabyte/slob-on-yugabytedb-1a32",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Then it is better to setup with a small scale and add rows by batches: ``` do $$ begin for i in 1..5 loop insert into pgio1 select * from pgio_base; commit; end loop; end; $$; ``` However, for larger workloads (with disk I/O, concurrent access), I'll write these setup.sh and runit.sh in a way that is more adapted to YugabyteDB, and probably all in PL/pgSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:758912",
      "database": "PostgreSQL",
      "date": "2021-07-28",
      "employment_period": "yugabyte-2021",
      "title": "Arctype connects to YugabyteDB",
      "url": "https://blog.yugabyte.com/connecting-to-yugabytedb-with-arctype-a-collaborative-sql-client/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Walks through installing the Arctype collaborative SQL client on Windows and configuring its connection to query a YugabyteDB database over the PostgreSQL protocol.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:758912",
      "database": "YugabyteDB",
      "date": "2021-07-28",
      "employment_period": "yugabyte-2021",
      "title": "Arctype connects to YugabyteDB",
      "url": "https://blog.yugabyte.com/connecting-to-yugabytedb-with-arctype-a-collaborative-sql-client/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Arctype connects to YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:774581",
      "database": "PostgreSQL",
      "date": "2021-07-28",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL prepared statements in PL/pgSQL",
      "url": "https://dev.to/aws-heroes/postgresql-prepared-statements-in-pl-pgsql-jl3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL prepared statements in PL/pgSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:778187",
      "database": "PostgreSQL",
      "date": "2021-08-02",
      "employment_period": "yugabyte-2021",
      "title": "VisiData to read JSON, HTML and YugabyteDB",
      "url": "https://dev.to/yugabyte/visidata-to-read-json-html-and-yugabytedb-2ng1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Installing is easy, documented at and I just did: ``` sudo yum install -y python3-pip python3-devel postgresql-devel gcc pip3 install visidata psycopg2 lxml requests ``` I've added psycopg2 (and then postgresql-devel) because I'll access to a YugabyteDB database which is accessed with the PostgreSQL driver as it is fully compatible (protocol, SQL and PL/pgSQL, Open Source license,...) and lxml to read some html direc",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:778187",
      "database": "YugabyteDB",
      "date": "2021-08-02",
      "employment_period": "yugabyte-2021",
      "title": "VisiData to read JSON, HTML and YugabyteDB",
      "url": "https://dev.to/yugabyte/visidata-to-read-json-html-and-yugabytedb-2ng1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "VisiData to read JSON, HTML and YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:782639",
      "database": "YugabyteDB",
      "date": "2021-08-05",
      "employment_period": "yugabyte-2021",
      "title": "Visible number of cpu on OpenVZ and LXC",
      "url": "https://dev.to/yugabyte/visible-number-of-cpu-on-openvz-2h7d",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "unsupported"
      ],
      "evidence_excerpt": "``` for i in yb-master yb-tserver ; do kubectl get statefulsets $i -n yb-demo -o yaml | tee $i.b.yaml | awk '/^ *exec [/]home[/]yugabyte[/]bin[/]yb-/{sub(/exec/,patch\" exec\")}{print}' patch=' echo 0-64 > /tmp_devices_system_cpu_present ; sed -e 's@/sys/devices/system/cpu/present@/tmp_devices_system_cpu_present@g' -i /home/yugabyte/lib/yb/libgutil.so ; ' | tee $i.e.yaml | kubectl apply -f /dev/stdin -n yb-demo ; done ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:794165",
      "database": "Cassandra",
      "date": "2021-08-17",
      "employment_period": "yugabyte-2021",
      "title": "usql on YugabyteDB",
      "url": "https://dev.to/yugabyte/usql-on-yugabytedb-2fk4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## copy between databases (NoSQL to SQL) With YugabyteDB the same distributed database server is compatible with Cassandra (YCQL) and Postgres (YSQL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:794165",
      "database": "PostgreSQL",
      "date": "2021-08-17",
      "employment_period": "yugabyte-2021",
      "title": "usql on YugabyteDB",
      "url": "https://dev.to/yugabyte/usql-on-yugabytedb-2fk4",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You know the powerful `psql` command line to connect to a PostgreSQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:794165",
      "database": "YugabyteDB",
      "date": "2021-08-17",
      "employment_period": "yugabyte-2021",
      "title": "usql on YugabyteDB",
      "url": "https://dev.to/yugabyte/usql-on-yugabytedb-2fk4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "usql on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:800045",
      "database": "Oracle Database",
      "date": "2021-08-22",
      "employment_period": "yugabyte-2021",
      "title": "A kind of flashback query in PostgreSQL",
      "url": "https://dev.to/aws-heroes/a-kind-of-flashback-query-in-postgresql-c02",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares Oracle 9i's Flashback Query to a PostgreSQL equivalent achieved by leaving a REPEATABLE READ transaction open in one psql session while another commits changes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:800045",
      "database": "PostgreSQL",
      "date": "2021-08-22",
      "employment_period": "yugabyte-2021",
      "title": "A kind of flashback query in PostgreSQL",
      "url": "https://dev.to/aws-heroes/a-kind-of-flashback-query-in-postgresql-c02",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A kind of flashback query in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:801683",
      "database": "Amazon Aurora",
      "date": "2021-08-24",
      "employment_period": "yugabyte-2021",
      "title": "Index Only Scan on Functional Indexes",
      "url": "https://dev.to/aws-heroes/index-only-scan-on-functional-indexes-9o2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "About PostgreSQL-compatible databases, AWS Aurora supports all those with the provisioned version.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:801683",
      "database": "CockroachDB",
      "date": "2021-08-24",
      "employment_period": "yugabyte-2021",
      "title": "Index Only Scan on Functional Indexes",
      "url": "https://dev.to/aws-heroes/index-only-scan-on-functional-indexes-9o2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "CockroachDB has no function based indexes, but generated columns (stored and virtual but only indexes on stored ones do not need to go to the primary one) _[Update 2022-03-01: this was written before v21.2]_ db<>fiddle for this: The best performance optimization for OLTP is to avoid the random reads of accessing the table for the critical use-cases that read many rows.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:801683",
      "database": "PostgreSQL",
      "date": "2021-08-24",
      "employment_period": "yugabyte-2021",
      "title": "Index Only Scan on Functional Indexes",
      "url": "https://dev.to/aws-heroes/index-only-scan-on-functional-indexes-9o2",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "I mentioned the limitation with PostgreSQL where the ACID visibility of the row is not stored in the index and then Index Only Scan makes sense with freshly vacuumed tables only.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:801683",
      "database": "YugabyteDB",
      "date": "2021-08-24",
      "employment_period": "yugabyte-2021",
      "title": "Index Only Scan on Functional Indexes",
      "url": "https://dev.to/aws-heroes/index-only-scan-on-functional-indexes-9o2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is currently PG11 compatible so the solution is functional index.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:807319",
      "database": "PostgreSQL",
      "date": "2021-08-30",
      "employment_period": "yugabyte-2021",
      "title": "UUID or cached sequences?",
      "url": "https://dev.to/yugabyte/uuid-or-cached-sequences-42fi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "(Here is a kaggle with this example if you want to play with) ## YugabyteDB I said PostgreSQL but I was connected to a YugabyteDB database which is fully compatible with postgres.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:807319",
      "database": "YugabyteDB",
      "date": "2021-08-30",
      "employment_period": "yugabyte-2021",
      "title": "UUID or cached sequences?",
      "url": "https://dev.to/yugabyte/uuid-or-cached-sequences-42fi",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This can be run onPostgreSQL or YugabyteDB: ```sql create extension pgcrypto; \\timing on create sequence myseq cache 32767; select count(nextval('myseq') ) from generate_series(1,10000000); select count(gen_random_uuid()) from generate_series(1,10000000); ``` With this large cache, the sequence generates 3 million unique numbers per second, but less than one million per second for the UUID: !Alt Text There's a good c",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:802855",
      "database": "YugabyteDB",
      "date": "2021-09-03",
      "employment_period": "yugabyte-2021",
      "title": "Index Scan in YugabyteDB",
      "url": "https://dev.to/yugabyte/index-scan-in-yugabytedb-5a2l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index Scan in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:4719",
      "database": "Oracle Database",
      "date": "2021-09-03",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE (Oracle Cloud Kubernetes)",
      "url": "https://www.yugabyte.com/blog/yugabytedb-on-oke-oracle-cloud-kubernetes/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB on OKE (Oracle Cloud Kubernetes).",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:4719",
      "database": "PostgreSQL",
      "date": "2021-09-03",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE (Oracle Cloud Kubernetes)",
      "url": "https://www.yugabyte.com/blog/yugabytedb-on-oke-oracle-cloud-kubernetes/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Like mentioned earlier, this is probably not a good idea for anything else than a demo cluster: dev@cloudshell:~ (uk-london-1)$ kubectl --namespace yb-demo get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE yb-master-ui LoadBalancer 10.96.156.48 152.67.136.107 7000:30910/TCP 12m yb-masters ClusterIP None <none> 7000/TCP,7100/TCP 12m yb-tserver-service LoadBalancer 10.96.94.161 140.238.120.201 6379:31153/TCP,90",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:4719",
      "database": "YugabyteDB",
      "date": "2021-09-03",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE (Oracle Cloud Kubernetes)",
      "url": "https://www.yugabyte.com/blog/yugabytedb-on-oke-oracle-cloud-kubernetes/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB on OKE (Oracle Cloud Kubernetes).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:814368",
      "database": "Amazon Aurora",
      "date": "2021-09-06",
      "employment_period": "yugabyte-2021",
      "title": "Aurora PostgreSQL db.r6g compared to db.r5 with YBIO",
      "url": "https://dev.to/aws-heroes/aurora-postgresql-db-r6g-compared-to-db-r5-with-ybio-1bnd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora PostgreSQL db.r6g compared to db.r5 with YBIO.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:814368",
      "database": "PostgreSQL",
      "date": "2021-09-06",
      "employment_period": "yugabyte-2021",
      "title": "Aurora PostgreSQL db.r6g compared to db.r5 with YBIO",
      "url": "https://dev.to/aws-heroes/aurora-postgresql-db-r6g-compared-to-db-r5-with-ybio-1bnd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora PostgreSQL db.r6g compared to db.r5 with YBIO.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:758157",
      "database": "Oracle Database",
      "date": "2021-09-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE",
      "url": "https://blog.yugabyte.com/yugabytedb-on-oke-oracle-cloud-kubernetes/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Documents installing YugabyteDB on a self-managed Oracle Cloud Kubernetes cluster built with Oracle's own Terraform Kubernetes installer, one of two OCI container routes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:758157",
      "database": "PostgreSQL",
      "date": "2021-09-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE",
      "url": "https://blog.yugabyte.com/yugabytedb-on-oke-oracle-cloud-kubernetes/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "5433 is the YSQL (PostgreSQL compatible) endpoint exposed by yb-tservers, through the load balancer.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:758157",
      "database": "YugabyteDB",
      "date": "2021-09-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE",
      "url": "https://blog.yugabyte.com/yugabytedb-on-oke-oracle-cloud-kubernetes/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB on OKE.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:836629",
      "database": "PostgreSQL",
      "date": "2021-09-22",
      "employment_period": "yugabyte-2021",
      "title": "when you have millions of insert statements in a file...",
      "url": "https://dev.to/yugabyte/when-you-have-millions-of-insert-statements-in-a-file-3nck",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## YugabyteDB - COPY In YugabyteDB as in PostgreSQL, for fast ingest of data, the right tool is COPY.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:836629",
      "database": "YugabyteDB",
      "date": "2021-09-22",
      "employment_period": "yugabyte-2021",
      "title": "when you have millions of insert statements in a file...",
      "url": "https://dev.to/yugabyte/when-you-have-millions-of-insert-statements-in-a-file-3nck",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I tried the same but it was very long: ```sql time psql postgres://yugabyte:yugabyte@yb1.pachot.net:5433 <<SQL drop table if exists demo; create table demo (key int, value int); \\i inserts.cmd select count(*),sum(value) from demo; \\q SQL ``` I mentioned the long parse to prepare the statements, and this is worse in a distributed database because the metadata (aka dictionary aka catalog aka system information) is shar",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:816390",
      "database": "PostgreSQL",
      "date": "2021-09-28",
      "employment_period": "yugabyte-2021",
      "title": "Bulk load into PostgreSQL / YugabyteDB - psycopg2",
      "url": "https://dev.to/yugabyte/bulk-load-into-postgresql-yugabytedb-psycopg2-fep",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "VALUES to load data but I'll use COPY which is the most efficient for any PostgreSQL compatible database that supports it.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:816390",
      "database": "YugabyteDB",
      "date": "2021-09-28",
      "employment_period": "yugabyte-2021",
      "title": "Bulk load into PostgreSQL / YugabyteDB - psycopg2",
      "url": "https://dev.to/yugabyte/bulk-load-into-postgresql-yugabytedb-psycopg2-fep",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Bulk load into PostgreSQL / YugabyteDB - psycopg2.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:844066",
      "database": "Amazon Aurora",
      "date": "2021-09-28",
      "employment_period": "yugabyte-2021",
      "title": "The cost and benefit of synchronous replication in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/the-cost-and-benefit-of-synchronous-replication-in-postgresql-and-yugabytedb-2ej0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Even if both cannot scale out the writes, the HA in Aurora relies on remote WAL sync for better HA (RPO=0 / RTO in few minutes).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:844066",
      "database": "PostgreSQL",
      "date": "2021-09-28",
      "employment_period": "yugabyte-2021",
      "title": "The cost and benefit of synchronous replication in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/the-cost-and-benefit-of-synchronous-replication-in-postgresql-and-yugabytedb-2ej0",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "benefit",
        "fast",
        "faster",
        "good",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The cost and benefit of synchronous replication in PostgreSQL and YugabyteDB.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:844066",
      "database": "YugabyteDB",
      "date": "2021-09-28",
      "employment_period": "yugabyte-2021",
      "title": "The cost and benefit of synchronous replication in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/the-cost-and-benefit-of-synchronous-replication-in-postgresql-and-yugabytedb-2ej0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The cost and benefit of synchronous replication in PostgreSQL and YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:850175",
      "database": "PostgreSQL",
      "date": "2021-10-04",
      "employment_period": "yugabyte-2021",
      "title": "hyper-scale multi-tenant for SaaS: an example with pgbench",
      "url": "https://dev.to/yugabyte/hyper-scale-multi-tenant-for-saas-an-example-with-pgbench-33a3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Having one schema to store all tenants is not a problem in a PostgreSQL compatible database because tables can be partitioned.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:850175",
      "database": "YugabyteDB",
      "date": "2021-10-04",
      "employment_period": "yugabyte-2021",
      "title": "hyper-scale multi-tenant for SaaS: an example with pgbench",
      "url": "https://dev.to/yugabyte/hyper-scale-multi-tenant-for-saas-an-example-with-pgbench-33a3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Demonstrates a maximally scalable SaaS multi-tenancy pattern: tenants share one schema and connection pool, isolated only by Row Level Security, tested on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:852920",
      "database": "YugabyteDB",
      "date": "2021-10-07",
      "employment_period": "yugabyte-2021",
      "title": "CREATE INDEX in YugabyteDB: online or fast?",
      "url": "https://dev.to/yugabyte/create-index-in-yugabytedb-online-or-fast-2dl3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "CREATE INDEX in YugabyteDB: online or fast?.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:5096",
      "database": "PostgreSQL",
      "date": "2021-10-14",
      "employment_period": "yugabyte-2021",
      "title": "How a Distributed SQL Database Boosts Secondary Index Queries with Index Only Scan",
      "url": "https://www.yugabyte.com/blog/how-a-distributed-sql-database-boosts-secondary-index-queries-with-index-only-scan/",
      "source": "yugabyte",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "Further reading “SQL Performance Explained” (Markus Winand) “Reasons why SELECT * is bad for SQL performance” (Tanel Poder) PostgreSQL hackers mailing list “WIP: Covering + unique indexes” (Anastasia Lubennikova) “Interscience Relational Database Index Design and the Optimizers” (Tapio Lahdenmäki) If you haven’t already, take YugabyteDB for a spin by downloading the latest version of the open source .",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:5096",
      "database": "YugabyteDB",
      "date": "2021-10-14",
      "employment_period": "yugabyte-2021",
      "title": "How a Distributed SQL Database Boosts Secondary Index Queries with Index Only Scan",
      "url": "https://www.yugabyte.com/blog/how-a-distributed-sql-database-boosts-secondary-index-queries-with-index-only-scan/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The good thing is that, in YugabyteDB, you don’t care.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:870484",
      "database": "PostgreSQL",
      "date": "2021-10-20",
      "employment_period": "yugabyte-2021",
      "title": "Boost Secondary Index Queries with Index Only Scan",
      "url": "https://blog.yugabyte.com/how-a-distributed-sql-database-boosts-secondary-index-queries-with-index-only-scan/",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "benefit",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Argues avoiding extra table-page hops via Index Only Scan is an overlooked optimization, noting PostgreSQL only gets this benefit on the already-vacuumed part of a table.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:870484",
      "database": "YugabyteDB",
      "date": "2021-10-20",
      "employment_period": "yugabyte-2021",
      "title": "Boost Secondary Index Queries with Index Only Scan",
      "url": "https://blog.yugabyte.com/how-a-distributed-sql-database-boosts-secondary-index-queries-with-index-only-scan/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "benefit",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "_Originally published at with YugabyteDB in mind, because the benefit of Index Only Scan is huge in a distributed database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:879782",
      "database": "YugabyteDB",
      "date": "2021-10-28",
      "employment_period": "yugabyte-2021",
      "title": "COPY progression in YugabyteDB",
      "url": "https://dev.to/yugabyte/copy-progression-in-yugabytedb-4ghb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Notes early YugabyteDB versions lacked COPY progress visibility, later fixed via pg_stat_progress_copy, and shows yb_enable_upsert_mode for faster bulk loads.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:885995",
      "database": "MongoDB",
      "date": "2021-11-03",
      "employment_period": "yugabyte-2021",
      "title": "Open-source🍃MongoDB API to 🚀YugabyteDB with 🥭MangoDB proxy",
      "url": "https://dev.to/yugabyte/open-sourcemongodb-api-to-yugabytedb-with-mangodb-proxy-22ka",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "resilient",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Runs the MangoDB proxy, later renamed FerretDB, in front of YugabyteDB to translate the MongoDB wire protocol into calls against a fully ACID, scalable SQL backend.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:885995",
      "database": "PostgreSQL",
      "date": "2021-11-03",
      "employment_period": "yugabyte-2021",
      "title": "Open-source🍃MongoDB API to 🚀YugabyteDB with 🥭MangoDB proxy",
      "url": "https://dev.to/yugabyte/open-sourcemongodb-api-to-yugabytedb-with-mangodb-proxy-22ka",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In this example we have both, open-source, ACID and resilient, with - MangoDB proxy between MongoDB and PostgreSQL protocols - YugabyteDB with its PostgreSQL compatible API on top of the fully consistent distributed storage This MangoDB project is new, and when looking for it you will see Google still trying to tell you that you made a typo.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:885995",
      "database": "YugabyteDB",
      "date": "2021-11-03",
      "employment_period": "yugabyte-2021",
      "title": "Open-source🍃MongoDB API to 🚀YugabyteDB with 🥭MangoDB proxy",
      "url": "https://dev.to/yugabyte/open-sourcemongodb-api-to-yugabytedb-with-mangodb-proxy-22ka",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "better",
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Now I have a fast access to the document: ``` yugabyte=# explain analyze select * from todo.tasks where _jsonb->>'_id' = '{\"$o\": \"618282aea9a2a141efa3c401\"}'; QUERY PLAN ------------------------------------------------------------------------------------------------------------------ Index Scan using task_pk on tasks (cost=0.00..4.12 rows=1 width=32) (actual time=13.617..13.622 rows=1 loops=1) Index Cond: ((_jsonb ->",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:891286",
      "database": "PostgreSQL",
      "date": "2021-11-07",
      "employment_period": "yugabyte-2021",
      "title": "🚀 Think about Primary Key & Indexes before anything else 🐘",
      "url": "https://dev.to/yugabyte/think-about-primary-key-indexes-before-anything-else-o5m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reruns James Long's community PostgreSQL indexing example on YugabyteDB, responding to tweets about proposing radical fixes without understanding proper indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:891286",
      "database": "YugabyteDB",
      "date": "2021-11-07",
      "employment_period": "yugabyte-2021",
      "title": "🚀 Think about Primary Key & Indexes before anything else 🐘",
      "url": "https://dev.to/yugabyte/think-about-primary-key-indexes-before-anything-else-o5m",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "James Long's approach was good: ask the community and provide all required information, the execution plan and index definition: With such information, the problem is easy to reproduce: ```sql yugabyte=# \\c yugabyte yugabyte psql (15devel, server 11.2-YB-2.9.1.0-b0) You are now connected to database \"yugabyte\" as user \"yugabyte\".",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:901228",
      "database": "Oracle Database",
      "date": "2021-11-19",
      "employment_period": "yugabyte-2021",
      "title": "kokizzu/hugedbbench",
      "url": "https://dev.to/franckpachot/kokizzuhugedbbench-fmg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs the kokizzu/hugedbbench distributed-database comparison against YugabyteDB on a single 16-vCPU Oracle Linux VM, planning a follow-up test under node failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:901228",
      "database": "PostgreSQL",
      "date": "2021-11-19",
      "employment_period": "yugabyte-2021",
      "title": "kokizzu/hugedbbench",
      "url": "https://dev.to/franckpachot/kokizzuhugedbbench-fmg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "### Docker I've installed Docker and docker-compose: ``` # Docker sudo yum update -y sudo yum install -y git docker postgresql sudo systemctl enable --now docker # Docker compose sudo curl -o /var/tmp/docker-compose -L -s ; sudo chmod a+x /var/tmp/docker-compose ``` ## Get the project The project with the docker-compose.yaml and a Go program is on GitHub: ``` # get the hugedbbench project git clone ``` ## Start Yugab",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:901228",
      "database": "YugabyteDB",
      "date": "2021-11-19",
      "employment_period": "yugabyte-2021",
      "title": "kokizzu/hugedbbench",
      "url": "https://dev.to/franckpachot/kokizzuhugedbbench-fmg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs the kokizzu/hugedbbench distributed-database comparison against YugabyteDB on a single 16-vCPU Oracle Linux VM, planning a follow-up test under node failure.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:5301",
      "database": "PostgreSQL",
      "date": "2021-11-19",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL: Sharding and Partitioning in YugabyteDB",
      "url": "https://www.yugabyte.com/blog/distributed-sql-essentials-sharding-and-partitioning-in-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is a PostgreSQL feature, known as declarative partitioning, which can be used with YugabyteDB because it is fully code compatible with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:5301",
      "database": "YugabyteDB",
      "date": "2021-11-19",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL: Sharding and Partitioning in YugabyteDB",
      "url": "https://www.yugabyte.com/blog/distributed-sql-essentials-sharding-and-partitioning-in-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed SQL: Sharding and Partitioning in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:904628",
      "database": "PostgreSQL",
      "date": "2021-11-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL Essentials: Sharding and Partitioning in YugabyteDB",
      "url": "https://blog.yugabyte.com/distributed-sql-essentials-sharding-and-partitioning-in-yugabytedb/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Breaks down YugabyteDB's physical data organization into PostgreSQL declarative partitioning at the query layer plus hash or range sharding at the storage layer.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:904628",
      "database": "YugabyteDB",
      "date": "2021-11-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL Essentials: Sharding and Partitioning in YugabyteDB",
      "url": "https://blog.yugabyte.com/distributed-sql-essentials-sharding-and-partitioning-in-yugabytedb/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed SQL Essentials: Sharding and Partitioning in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:904630",
      "database": "PostgreSQL",
      "date": "2021-11-22",
      "employment_period": "yugabyte-2021",
      "title": "Query PostgreSQL, or any 🐘-compatible like Amazon Redshift, from YugabyteDB 🚀 thanks to Postgres FDW",
      "url": "https://dev.to/aws-heroes/query-postgresql-or-any-compatible-like-amazon-redshift-from-yugabytedb-thanks-to-postgres-fdw-18l3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "better",
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL can run many kind of workloads, but is also a great federation layer for other database engines, thanks to the Foreign Data Wrapper (FDW).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:904630",
      "database": "YugabyteDB",
      "date": "2021-11-22",
      "employment_period": "yugabyte-2021",
      "title": "Query PostgreSQL, or any 🐘-compatible like Amazon Redshift, from YugabyteDB 🚀 thanks to Postgres FDW",
      "url": "https://dev.to/aws-heroes/query-postgresql-or-any-compatible-like-amazon-redshift-from-yugabytedb-thanks-to-postgres-fdw-18l3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Query PostgreSQL, or any 🐘-compatible like Amazon Redshift, from YugabyteDB 🚀 thanks to Postgres FDW.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:910840",
      "database": "PostgreSQL",
      "date": "2021-11-29",
      "employment_period": "yugabyte-2021",
      "title": "Text Search example with the OMDB sample database",
      "url": "https://dev.to/yugabyte/text-search-example-with-the-omdb-sample-database-5e4l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Builds PostgreSQL full-text search over the OMDB movie sample database using a GIN index on tsvector columns, encapsulated behind views and a stored function.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:910840",
      "database": "YugabyteDB",
      "date": "2021-11-29",
      "employment_period": "yugabyte-2021",
      "title": "Text Search example with the OMDB sample database",
      "url": "https://dev.to/yugabyte/text-search-example-with-the-omdb-sample-database-5e4l",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "What I did was load into PostgreSQL in order to export with pg_dump: ``` git clone cd omdb-postgresql ./download ./import pg_dump -f omdb.sql omdb ``` I have a quick script to move the PRIMARY KEY declaration into the CREATE TABLE: ``` awk ' /^ALTER TABLE ONLY/{last_alter_table=$NF} /^ *ADD CONSTRAINT .* PRIMARY KEY /{sub(/ADD /,\"\");sub(/;$/,\"\");pk[last_alter_table]=$0\",\";$0=$0\"\\\\r\"} NR > FNR && /^CREATE TABLE/{ prin",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:870474",
      "database": "PostgreSQL",
      "date": "2021-11-30",
      "employment_period": "yugabyte-2021",
      "title": "Yugabyte COPY batch size",
      "url": "https://dev.to/yugabyte/yugabyte-copy-batch-size-25hh",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "A monolithic PostgreSQL without any synchronous replica can ingest data faster, but is subject to data loss and service outage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:870474",
      "database": "YugabyteDB",
      "date": "2021-11-30",
      "employment_period": "yugabyte-2021",
      "title": "Yugabyte COPY batch size",
      "url": "https://dev.to/yugabyte/yugabyte-copy-batch-size-25hh",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is really fast on YugabyteDB which stores data in LSM Tree: the new values are appended into the MemTable (and WAL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:914416",
      "database": "YugabyteDB",
      "date": "2021-12-01",
      "employment_period": "yugabyte-2021",
      "title": "🌎🌍🌏 Yugabyte cross-continent deployment 🚀",
      "url": "https://dev.to/yugabyte/yugabyte-cross-continent-deployment-b7i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "🌎🌍🌏 Yugabyte cross-continent deployment 🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:918949",
      "database": "PostgreSQL",
      "date": "2021-12-06",
      "employment_period": "yugabyte-2021",
      "title": "\"Rows Removed by Index Recheck\" on YugabyteDB Index Scan",
      "url": "https://dev.to/yugabyte/rows-removed-by-index-recheck-on-yugabytedb-index-scan-38aj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains a since-fixed YugabyteDB Index Scan bug where the index condition acted as a lossy pre-filter returning extra rows, echoing PostgreSQL's lossy Bitmap block behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:918949",
      "database": "YugabyteDB",
      "date": "2021-12-06",
      "employment_period": "yugabyte-2021",
      "title": "\"Rows Removed by Index Recheck\" on YugabyteDB Index Scan",
      "url": "https://dev.to/yugabyte/rows-removed-by-index-recheck-on-yugabytedb-index-scan-38aj",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "Explains a since-fixed YugabyteDB Index Scan bug where the index condition acted as a lossy pre-filter returning extra rows, echoing PostgreSQL's lossy Bitmap block behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:918508",
      "database": "YugabyteDB",
      "date": "2021-12-07",
      "employment_period": "yugabyte-2021",
      "title": "⏱ Read from the nearest peer in a multi-region database 🚀 with followers read",
      "url": "https://dev.to/franckpachot/read-from-the-nearest-peer-in-a-multi-region-database-with-followers-read-59d9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Measures cross-region latency, 100 to 220 milliseconds, between three YugabyteDB regions, showing single-tablet reads under 1ms while multi-tablet reads take longer.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:920737",
      "database": "PostgreSQL",
      "date": "2021-12-08",
      "employment_period": "yugabyte-2021",
      "title": "Quick 📸 on 🐘 active SQL from pg_stat_statements",
      "url": "https://dev.to/yugabyte/quick-on-active-sql-from-pgstatstatements-4e4h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I've used it on YugabyteDB 2.9 which is PostgreSQL 11.2 compatible.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:920737",
      "database": "YugabyteDB",
      "date": "2021-12-08",
      "employment_period": "yugabyte-2021",
      "title": "Quick 📸 on 🐘 active SQL from pg_stat_statements",
      "url": "https://dev.to/yugabyte/quick-on-active-sql-from-pgstatstatements-4e4h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Provides a CTE query joining two pg_stat_statements snapshots taken 30 seconds apart via pg_sleep to compute delta activity, verified on YugabyteDB 2.9.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:928620",
      "database": "PostgreSQL",
      "date": "2021-12-17",
      "employment_period": "yugabyte-2021",
      "title": "How to write SQL recursive CTE in 5 steps",
      "url": "https://dev.to/yugabyte/learn-how-to-write-sql-recursive-cte-in-5-steps-3n88",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The example below is standard SQL, I have run it in YugabyteDB, which is PostgreSQL compatible.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:928620",
      "database": "YugabyteDB",
      "date": "2021-12-17",
      "employment_period": "yugabyte-2021",
      "title": "How to write SQL recursive CTE in 5 steps",
      "url": "https://dev.to/yugabyte/learn-how-to-write-sql-recursive-cte-in-5-steps-3n88",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Teaches WITH RECURSIVE by first joining the classic EMP table manually for two hierarchy levels, then converting the same logic into a recursive CTE run on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:930622",
      "database": "PostgreSQL",
      "date": "2021-12-21",
      "employment_period": "yugabyte-2021",
      "title": "🐘🚀 Triggers & Stored Procedures for pure data integrity logic and performance",
      "url": "https://dev.to/yugabyte/triggers-stored-procedures-for-pure-data-integrity-logic-and-performance-1eh8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is a limitation from PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:930622",
      "database": "YugabyteDB",
      "date": "2021-12-21",
      "employment_period": "yugabyte-2021",
      "title": "🐘🚀 Triggers & Stored Procedures for pure data integrity logic and performance",
      "url": "https://dev.to/yugabyte/triggers-stored-procedures-for-pure-data-integrity-logic-and-performance-1eh8",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "advantage",
        "better",
        "fast",
        "named source of advantages",
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In YugabyteDB, a table is stored clustered on the primary key, to allow fast point and range access without a secondary index.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:5530",
      "database": "YugabyteDB",
      "date": "2021-12-22",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Cloud Distributed SQL: Avoiding Region Failure with YugabyteDB",
      "url": "https://www.yugabyte.com/blog/avoiding-region-failure-with-multi-cloud-distributed-sql/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "better",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Multi-Cloud Distributed SQL: Avoiding Region Failure with YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:942754",
      "database": "Oracle Database",
      "date": "2022-01-02",
      "employment_period": "yugabyte-2021",
      "title": "SQL to avoid data corruption in race conditions with SERIALIZABLE 🐘 🚀",
      "url": "https://dev.to/yugabyte/sql-to-avoid-data-corruption-in-race-conditions-with-serializable-n5c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Revisits a prior 'Oracle serializable is not serializable' example to show a basic PostgreSQL and YugabyteDB SERIALIZABLE transaction before a rate-limiter series.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:942754",
      "database": "PostgreSQL",
      "date": "2022-01-02",
      "employment_period": "yugabyte-2021",
      "title": "SQL to avoid data corruption in race conditions with SERIALIZABLE 🐘 🚀",
      "url": "https://dev.to/yugabyte/sql-to-avoid-data-corruption-in-race-conditions-with-serializable-n5c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Revisits a prior 'Oracle serializable is not serializable' example to show a basic PostgreSQL and YugabyteDB SERIALIZABLE transaction before a rate-limiter series.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:942754",
      "database": "YugabyteDB",
      "date": "2022-01-02",
      "employment_period": "yugabyte-2021",
      "title": "SQL to avoid data corruption in race conditions with SERIALIZABLE 🐘 🚀",
      "url": "https://dev.to/yugabyte/sql-to-avoid-data-corruption-in-race-conditions-with-serializable-n5c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Revisits a prior 'Oracle serializable is not serializable' example to show a basic PostgreSQL and YugabyteDB SERIALIZABLE transaction before a rate-limiter series.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:932612",
      "database": "Amazon Aurora",
      "date": "2022-01-03",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Bitmap Scan with GIN indexes on Array or Secondary Table with Index Only Scan",
      "url": "https://dev.to/aws-heroes/postgresql-bitmap-scan-with-gin-indexes-on-array-or-secondary-table-with-index-only-scan-23fl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I had it in draft an this tweet by Nikolay Samokhvalov about arrays was a good occasion: {% twitter 1478044288659464200 %} ## PostgreSQL I've run the same as the previous post but this time on AWS Aurora with PostgreSQL compatibility.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:932612",
      "database": "PostgreSQL",
      "date": "2022-01-03",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Bitmap Scan with GIN indexes on Array or Secondary Table with Index Only Scan",
      "url": "https://dev.to/aws-heroes/postgresql-bitmap-scan-with-gin-indexes-on-array-or-secondary-table-with-index-only-scan-23fl",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I had it in draft an this tweet by Nikolay Samokhvalov about arrays was a good occasion: {% twitter 1478044288659464200 %} ## PostgreSQL I've run the same as the previous post but this time on AWS Aurora with PostgreSQL compatibility.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:932612",
      "database": "YugabyteDB",
      "date": "2022-01-03",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Bitmap Scan with GIN indexes on Array or Secondary Table with Index Only Scan",
      "url": "https://dev.to/aws-heroes/postgresql-bitmap-scan-with-gin-indexes-on-array-or-secondary-table-with-index-only-scan-23fl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "This was much more efficient in YugabyteDB because this additional index is like an index (tables are stored as LSM Trees rather than heap tables) and because, without this, the Rows Removed by Filter from the GIN index are very expensive in a distributed database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:942695",
      "database": "Oracle Database",
      "date": "2022-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Rate limiting with PostgreSQL / YugabyteDB (token buckets function)",
      "url": "https://dev.to/yugabyte/rate-limiting-with-postgresql-yugabytedb-token-buckets-function-5dh8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Be careful if you implement this in another database, Oracle does not provide this isolation level.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:942695",
      "database": "PostgreSQL",
      "date": "2022-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Rate limiting with PostgreSQL / YugabyteDB (token buckets function)",
      "url": "https://dev.to/yugabyte/rate-limiting-with-postgresql-yugabytedb-token-buckets-function-5dh8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "overcomes stated disadvantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Rate limiting with PostgreSQL / YugabyteDB (token buckets function).",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:942695",
      "database": "YugabyteDB",
      "date": "2022-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Rate limiting with PostgreSQL / YugabyteDB (token buckets function)",
      "url": "https://dev.to/yugabyte/rate-limiting-with-postgresql-yugabytedb-token-buckets-function-5dh8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "overcomes stated disadvantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Rate limiting with PostgreSQL / YugabyteDB (token buckets function).",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:943310",
      "database": "PostgreSQL",
      "date": "2022-01-04",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB JDBC Smart Driver for proxyless HA/LB",
      "url": "https://dev.to/yugabyte/yugabytedb-jdbc-smart-driver-for-proxyless-halb-2k8a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains how the YugabyteDB JDBC Smart Driver extends the standard PostgreSQL driver so an app can connect to and load-balance across cluster nodes without a proxy.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:943310",
      "database": "YugabyteDB",
      "date": "2022-01-04",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB JDBC Smart Driver for proxyless HA/LB",
      "url": "https://dev.to/yugabyte/yugabytedb-jdbc-smart-driver-for-proxyless-halb-2k8a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB JDBC Smart Driver for proxyless HA/LB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:943416",
      "database": "PostgreSQL",
      "date": "2022-01-06",
      "employment_period": "yugabyte-2021",
      "title": "Optimistic or Pessimistic locking for Token Buckets Rate limiting in PostgreSQL",
      "url": "https://dev.to/aws-heroes/optimistic-or-pessimistic-locking-for-token-buckets-rate-limiting-in-postgresql-4om5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Optimistic or Pessimistic locking for Token Buckets Rate limiting in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:943416",
      "database": "YugabyteDB",
      "date": "2022-01-06",
      "employment_period": "yugabyte-2021",
      "title": "Optimistic or Pessimistic locking for Token Buckets Rate limiting in PostgreSQL",
      "url": "https://dev.to/aws-heroes/optimistic-or-pessimistic-locking-for-token-buckets-rate-limiting-in-postgresql-4om5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "With YugabyteDB, optimistic locking is more scalable, but can fail on conflict.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:945303",
      "database": "PostgreSQL",
      "date": "2022-01-06",
      "employment_period": "yugabyte-2021",
      "title": "Scaling Token Buckets Rate limiting with YugabyteDB",
      "url": "https://dev.to/yugabyte/scaling-token-buckets-rate-limiting-with-yugabytedb-4p1o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reports RateLimitDemo.java throughput on Amazon RDS PostgreSQL: about 1000 tokens/sec under Read Committed, dropping to 124 tokens/sec with contention on the same row ids.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:945303",
      "database": "YugabyteDB",
      "date": "2022-01-06",
      "employment_period": "yugabyte-2021",
      "title": "Scaling Token Buckets Rate limiting with YugabyteDB",
      "url": "https://dev.to/yugabyte/scaling-token-buckets-rate-limiting-with-yugabytedb-4p1o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Scaling Token Buckets Rate limiting with YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:954094",
      "database": "YugabyteDB",
      "date": "2022-01-14",
      "employment_period": "yugabyte-2021",
      "title": "Quick 📊 on 🐘 active SQL from pg_stat_activity",
      "url": "https://dev.to/yugabyte/quick-on-active-sql-from-pgstatactivity-27hi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "run sampling from `psql` `\\watch` ```sql select yb_ash_sample(); \\watch 1 ``` or with a loop: ```sql create or replace procedure yb_ash_loop(seconds int default 1) as $$ declare n int; begin loop select yb_ash_sample(), pg_sleep(seconds) into n; raise notice '% Updated statements: %',clock_timestamp(),n; commit; end loop; end; $$ language plpgsql; call yb_ash_loop(1); ``` In YugabyteDB it catches the activity on the ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:957470",
      "database": "YugabyteDB",
      "date": "2022-01-18",
      "employment_period": "yugabyte-2021",
      "title": "Maintain a duplicate covering index in a region",
      "url": "https://dev.to/yugabyte/maintain-a-duplicate-covering-index-in-a-region-29k4",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "improved"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I'm doing this with YugabyteDB 2.11 and this will be improved in future versions.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:5678",
      "database": "Oracle Database",
      "date": "2022-01-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Migration: What About Those 19 Oracle Features I Thought I Would Miss?",
      "url": "https://www.yugabyte.com/blog/oracle-versus-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Migration: What About Those 19 Oracle Features I Thought I Would Miss?.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:5678",
      "database": "YugabyteDB",
      "date": "2022-01-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Migration: What About Those 19 Oracle Features I Thought I Would Miss?",
      "url": "https://www.yugabyte.com/blog/oracle-versus-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Migration: What About Those 19 Oracle Features I Thought I Would Miss?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:968469",
      "database": "PostgreSQL",
      "date": "2022-01-26",
      "employment_period": "yugabyte-2021",
      "title": "Delete table and column statistics in PostgreSQL or YugabyteDB 🐘🚀",
      "url": "https://dev.to/franckpachot/delete-column-statistics-in-postgresql-or-yugabytedb-37i3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Delete table and column statistics in PostgreSQL or YugabyteDB 🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:968469",
      "database": "YugabyteDB",
      "date": "2022-01-26",
      "employment_period": "yugabyte-2021",
      "title": "Delete table and column statistics in PostgreSQL or YugabyteDB 🐘🚀",
      "url": "https://dev.to/franckpachot/delete-column-statistics-in-postgresql-or-yugabytedb-37i3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Delete table and column statistics in PostgreSQL or YugabyteDB 🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:967631",
      "database": "PostgreSQL",
      "date": "2022-02-07",
      "employment_period": "yugabyte-2021",
      "title": "REST Data Service on YugabyteDB / PostgreSQL with PostgREST",
      "url": "https://dev.to/yugabyte/rest-data-service-on-yugabytedb-postgresql-5f2h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "REST Data Service on YugabyteDB / PostgreSQL with PostgREST.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:967631",
      "database": "YugabyteDB",
      "date": "2022-02-07",
      "employment_period": "yugabyte-2021",
      "title": "REST Data Service on YugabyteDB / PostgreSQL with PostgREST",
      "url": "https://dev.to/yugabyte/rest-data-service-on-yugabytedb-postgresql-5f2h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "REST Data Service on YugabyteDB / PostgreSQL with PostgREST.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:983132",
      "database": "PostgreSQL",
      "date": "2022-02-09",
      "employment_period": "yugabyte-2021",
      "title": "Most recent record (of many items) with YugabyteDB 🚀",
      "url": "https://dev.to/franckpachot/most-recent-record-of-many-items-with-yugabytedb-1gl3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reruns Ryan Booz's TimescaleDB 'most recent record per item' query patterns on YugabyteDB's sharded LSM-tree tables to compare performance against the PostgreSQL originals.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:983132",
      "database": "YugabyteDB",
      "date": "2022-02-09",
      "employment_period": "yugabyte-2021",
      "title": "Most recent record (of many items) with YugabyteDB 🚀",
      "url": "https://dev.to/franckpachot/most-recent-record-of-many-items-with-yugabytedb-1gl3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "advantage",
        "better",
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here are they: ```sql yugabyte=# select * from trucks order by last_reading desc nulls last limit 3; truck_id | last_reading ----------+------------------------------- 4321 | 2022-02-09 15:35:56.508575+00 1234 | 2022-02-09 15:35:55.530103+00 1361 | (3 rows) ``` This requires little more code than with an index but has the advantage to build the most efficient structures.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:983472",
      "database": "PostgreSQL",
      "date": "2022-02-09",
      "employment_period": "yugabyte-2021",
      "title": "YBDemo: simple 💻 demo lab for YugabyteDB with Java client and Docker🚀☕🐳🐘",
      "url": "https://dev.to/yugabyte/ybdemo-simple-demo-lab-for-yugabytedb-with-java-client-and-docker-servers-36ao",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "You find the `docker-compose.yaml` in {% github FranckPachot/ybdemo %} All feedbacks and comments welcome, follow twitter, linkedin to share and learn more, and ⭐ are highly appreciated on the repo 😎 🚀 YugabyteDB is a distributed SQL database, open source, and PostgreSQL compatible.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:983472",
      "database": "YugabyteDB",
      "date": "2022-02-09",
      "employment_period": "yugabyte-2021",
      "title": "YBDemo: simple 💻 demo lab for YugabyteDB with Java client and Docker🚀☕🐳🐘",
      "url": "https://dev.to/yugabyte/ybdemo-simple-demo-lab-for-yugabytedb-with-java-client-and-docker-servers-36ao",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YBDemo: simple 💻 demo lab for YugabyteDB with Java client and Docker🚀☕🐳🐘.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992063",
      "database": "Cassandra",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB table_id UUID for PostgreSQL tables",
      "url": "https://dev.to/yugabyte/yugabytedb-tableid-uuid-for-postgresql-tables-2f8c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I've created them from YCQL, the Cassandra compatible interface, with: ```sql create keyspace database1; use database1; create table demo(col1 int primary key, col2 int) with transactions = { 'enabled' : true }; create index demoi on demo (col2); ``` But the others show version 3 UUID (according to the 13th digit), and have duplicate keyspace and table name.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992063",
      "database": "Microsoft SQL Server",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB table_id UUID for PostgreSQL tables",
      "url": "https://dev.to/yugabyte/yugabytedb-tableid-uuid-for-postgresql-tables-2f8c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The reason is that tables in YugabyteDB are stored in their primary key index (as in MySQL InnoDB, SQL Server clustered indexes, or Oracle IOT) for fast access by the primary key.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992063",
      "database": "MySQL",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB table_id UUID for PostgreSQL tables",
      "url": "https://dev.to/yugabyte/yugabytedb-tableid-uuid-for-postgresql-tables-2f8c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But who knows, one day, we may have a MySQL compatible API, so internally we must know where the table comes from (the OID has a meaning for PostgreSQL only) and this is the PGSQL table type.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992063",
      "database": "Oracle Database",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB table_id UUID for PostgreSQL tables",
      "url": "https://dev.to/yugabyte/yugabytedb-tableid-uuid-for-postgresql-tables-2f8c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The reason is that tables in YugabyteDB are stored in their primary key index (as in MySQL InnoDB, SQL Server clustered indexes, or Oracle IOT) for fast access by the primary key.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992063",
      "database": "PostgreSQL",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB table_id UUID for PostgreSQL tables",
      "url": "https://dev.to/yugabyte/yugabytedb-tableid-uuid-for-postgresql-tables-2f8c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB table_id UUID for PostgreSQL tables.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992063",
      "database": "YugabyteDB",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB table_id UUID for PostgreSQL tables",
      "url": "https://dev.to/yugabyte/yugabytedb-tableid-uuid-for-postgresql-tables-2f8c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The naming difficulty is because of the flexible two-layer architecture of YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992650",
      "database": "Oracle Database",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "SQLcl to transfer data from Oracle to PostgreSQL or YugabyteDB 🅾🐘🚀",
      "url": "https://dev.to/yugabyte/sqlcl-to-transfer-data-from-oracle-to-postgresql-or-yugabytedb-lha",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQLcl to transfer data from Oracle to PostgreSQL or YugabyteDB 🅾🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992650",
      "database": "PostgreSQL",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "SQLcl to transfer data from Oracle to PostgreSQL or YugabyteDB 🅾🐘🚀",
      "url": "https://dev.to/yugabyte/sqlcl-to-transfer-data-from-oracle-to-postgresql-or-yugabytedb-lha",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQLcl to transfer data from Oracle to PostgreSQL or YugabyteDB 🅾🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:992650",
      "database": "YugabyteDB",
      "date": "2022-02-17",
      "employment_period": "yugabyte-2021",
      "title": "SQLcl to transfer data from Oracle to PostgreSQL or YugabyteDB 🅾🐘🚀",
      "url": "https://dev.to/yugabyte/sqlcl-to-transfer-data-from-oracle-to-postgresql-or-yugabytedb-lha",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQLcl to transfer data from Oracle to PostgreSQL or YugabyteDB 🅾🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:993459",
      "database": "Oracle Database",
      "date": "2022-02-18",
      "employment_period": "yugabyte-2021",
      "title": "Table size in YugabyteDB, PostgreSQL and Oracle 🅾🐘🚀",
      "url": "https://dev.to/yugabyte/table-size-in-yugabytedb-postgresql-and-oracle-19m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Table size in YugabyteDB, PostgreSQL and Oracle 🅾🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:993459",
      "database": "PostgreSQL",
      "date": "2022-02-18",
      "employment_period": "yugabyte-2021",
      "title": "Table size in YugabyteDB, PostgreSQL and Oracle 🅾🐘🚀",
      "url": "https://dev.to/yugabyte/table-size-in-yugabytedb-postgresql-and-oracle-19m",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "benefit",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "There are some optimizations to do with PostgreSQL but basically this case (which I got from a user in our slack channel) cannot benefit from compression (the threshold is 2KB text).",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:993459",
      "database": "YugabyteDB",
      "date": "2022-02-18",
      "employment_period": "yugabyte-2021",
      "title": "Table size in YugabyteDB, PostgreSQL and Oracle 🅾🐘🚀",
      "url": "https://dev.to/yugabyte/table-size-in-yugabytedb-postgresql-and-oracle-19m",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Table size in YugabyteDB, PostgreSQL and Oracle 🅾🐘🚀.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:956814",
      "database": "YugabyteDB",
      "date": "2022-02-23",
      "employment_period": "yugabyte-2021",
      "title": "Reference Tables as duplicate covering indexes",
      "url": "https://dev.to/yugabyte/reference-tables-as-duplicate-covering-indexes-2j4l",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You may think it is a good idea to put the small reference tables into a colocated tablet, but, in the version I'm testing (YugabyteDB 2.11) colocated tables have their indexes colocated, which is the oposite of what I want to do here with leaders in different nodes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:997511",
      "database": "Amazon Aurora",
      "date": "2022-02-23",
      "employment_period": "yugabyte-2021",
      "title": "🔶🚀 YugabyteDB on Amazon EKS",
      "url": "https://dev.to/aws-heroes/yugabytedb-on-amazon-eks-3206",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is open-source and, being PostgreSQL compatible, can run the same applications as you run on EC2 self-managed community PostgreSQL, or the managed RDS PostgreSQL, or Aurora with PostgreSQL compatibility.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:997511",
      "database": "PostgreSQL",
      "date": "2022-02-23",
      "employment_period": "yugabyte-2021",
      "title": "🔶🚀 YugabyteDB on Amazon EKS",
      "url": "https://dev.to/aws-heroes/yugabytedb-on-amazon-eks-3206",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is open-source and, being PostgreSQL compatible, can run the same applications as you run on EC2 self-managed community PostgreSQL, or the managed RDS PostgreSQL, or Aurora with PostgreSQL compatibility.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:997511",
      "database": "YugabyteDB",
      "date": "2022-02-23",
      "employment_period": "yugabyte-2021",
      "title": "🔶🚀 YugabyteDB on Amazon EKS",
      "url": "https://dev.to/aws-heroes/yugabytedb-on-amazon-eks-3206",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 14,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "🔶🚀 YugabyteDB on Amazon EKS.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1001200",
      "database": "Oracle Database",
      "date": "2022-02-25",
      "employment_period": "yugabyte-2021",
      "title": "Which 🐘PostgreSQL problems are solved with 🚀YugabyteDB",
      "url": "https://dev.to/yugabyte/which-postgresql-problems-are-solved-with-yugabytedb-2gm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This will address two cases: - application that doesn't use a client-side connection pool - microservices with many too connection pools ## _#6: Primary Key Index is a Space Hog_ 🐘PostgreSQL stores rows in heap tables like Oracle, and the primary key is an additional secondary index.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1001200",
      "database": "PostgreSQL",
      "date": "2022-02-25",
      "employment_period": "yugabyte-2021",
      "title": "Which 🐘PostgreSQL problems are solved with 🚀YugabyteDB",
      "url": "https://dev.to/yugabyte/which-postgresql-problems-are-solved-with-yugabytedb-2gm",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 2,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [
        "inefficient"
      ],
      "evidence_excerpt": "## _#3: Inefficient Replication That Spreads Corruption_ 🐘PostgreSQL streaming replication is based on physical replication though the WAL, at page level.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1001200",
      "database": "YugabyteDB",
      "date": "2022-02-25",
      "employment_period": "yugabyte-2021",
      "title": "Which 🐘PostgreSQL problems are solved with 🚀YugabyteDB",
      "url": "https://dev.to/yugabyte/which-postgresql-problems-are-solved-with-yugabytedb-2gm",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "🚀YugabyteDB is built for efficient sync replication, sharding the tables and indexes into tablets, forming a Raft group, and replicating them to their peers with the Raft protocol.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1004067",
      "database": "Oracle Database",
      "date": "2022-03-01",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on Public network 🚀🌐",
      "url": "https://dev.to/yugabyte/yugabytedb-on-public-network-53g5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Deploys a YugabyteDB cluster across free-tier Oracle Cloud VMs in Frankfurt and Zurich connected over the public internet instead of a VPC peering or direct-connect link.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1004067",
      "database": "YugabyteDB",
      "date": "2022-03-01",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on Public network 🚀🌐",
      "url": "https://dev.to/yugabyte/yugabytedb-on-public-network-53g5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB on Public network 🚀🌐.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1005089",
      "database": "PostgreSQL",
      "date": "2022-03-01",
      "employment_period": "yugabyte-2021",
      "title": "Computed columns in PostgreSQL 🐘 / YugabyteDB🚀",
      "url": "https://dev.to/franckpachot/computed-columns-in-postgresql-yugabytedb-586l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Computed columns in PostgreSQL 🐘 / YugabyteDB🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1005089",
      "database": "YugabyteDB",
      "date": "2022-03-01",
      "employment_period": "yugabyte-2021",
      "title": "Computed columns in PostgreSQL 🐘 / YugabyteDB🚀",
      "url": "https://dev.to/franckpachot/computed-columns-in-postgresql-yugabytedb-586l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Computed columns in PostgreSQL 🐘 / YugabyteDB🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1008233",
      "database": "PostgreSQL",
      "date": "2022-03-04",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL on ARM: default page size matters",
      "url": "https://dev.to/aws-heroes/postgresql-on-arm-default-page-size-matters-2n7a",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "But those benefit to systems with terabytes of memory, not the usual PostgreSQL setting.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1017825",
      "database": "PostgreSQL",
      "date": "2022-03-10",
      "employment_period": "yugabyte-2021",
      "title": "Avoiding hotspots in pgbench on PostgreSQL or YugabyteDB",
      "url": "https://dev.to/yugabyte/avoiding-hotspots-in-pgbench-on-or-38lk",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Read Committed is not enabled by default for backward compatibility, but it is the recommended setting, as a PostgreSQL-compatible database must provide all isolation levels to have the same runtime behavior as PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1017825",
      "database": "YugabyteDB",
      "date": "2022-03-10",
      "employment_period": "yugabyte-2021",
      "title": "Avoiding hotspots in pgbench on PostgreSQL or YugabyteDB",
      "url": "https://dev.to/yugabyte/avoiding-hotspots-in-pgbench-on-or-38lk",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "To avoid retriable errors (`--max-tries`), you can run in Read Committed with wait-on-conflict: ``` docker run -d --name yb --hostname yb -p7000:7000 -p5433:5433 \\ yugabytedb/yugabyte:latest bin/yugabyted start \\ --tserver_flags=yb_enable_read_committed_isolation=true \\ --background=false ``` You get better performance, and no need for a retry logic, even with the default PgBench design where all sessions update the ",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:6106",
      "database": "PostgreSQL",
      "date": "2022-03-10",
      "employment_period": "yugabyte-2021",
      "title": "How Does YugabyteDB’s Two-Layer Architecture Work?",
      "url": "https://www.yugabyte.com/blog/distributed-sql-yugabytedb-two-layer-architecture/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Separates the PostgreSQL-compatible query layer from the DocDB distributed document store to explain how Lamport clocks, Raft consensus, and hash/range sharding combine in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:6106",
      "database": "YugabyteDB",
      "date": "2022-03-10",
      "employment_period": "yugabyte-2021",
      "title": "How Does YugabyteDB’s Two-Layer Architecture Work?",
      "url": "https://www.yugabyte.com/blog/distributed-sql-yugabytedb-two-layer-architecture/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How Does YugabyteDB’s Two-Layer Architecture Work?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1020857",
      "database": "PostgreSQL",
      "date": "2022-03-13",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL index partition in same tablespace as table",
      "url": "https://dev.to/aws-heroes/postgresql-index-partition-in-same-tablespace-as-table-2hak",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL index partition in same tablespace as table.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1023208",
      "database": "Amazon Aurora",
      "date": "2022-03-16",
      "employment_period": "yugabyte-2021",
      "title": "Serverless DB connections: Lambda to YugabyteDB 🚀",
      "url": "https://dev.to/yugabyte/serverless-db-connections-lambda-to-yugabytedb-4m09",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Contrasts Aurora Serverless v2, which keeps a provisioned VM billed by scale, with a distributed approach where only a minimal YugabyteDB configuration stays up for Lambda.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1023208",
      "database": "YugabyteDB",
      "date": "2022-03-16",
      "employment_period": "yugabyte-2021",
      "title": "Serverless DB connections: Lambda to YugabyteDB 🚀",
      "url": "https://dev.to/yugabyte/serverless-db-connections-lambda-to-yugabytedb-4m09",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Serverless DB connections: Lambda to YugabyteDB 🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:971391",
      "database": "PostgreSQL",
      "date": "2022-03-18",
      "employment_period": "yugabyte-2021",
      "title": "Efficient pagination in YugabyteDB & PostgreSQL 📃🐘🚀",
      "url": "https://dev.to/yugabyte/efficient-pagination-in-yugabytedb-postgresql-4h5a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Efficient pagination in YugabyteDB & PostgreSQL 📃🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:971391",
      "database": "YugabyteDB",
      "date": "2022-03-18",
      "employment_period": "yugabyte-2021",
      "title": "Efficient pagination in YugabyteDB & PostgreSQL 📃🐘🚀",
      "url": "https://dev.to/yugabyte/efficient-pagination-in-yugabytedb-postgresql-4h5a",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Efficient pagination in YugabyteDB & PostgreSQL 📃🐘🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1027438",
      "database": "PostgreSQL",
      "date": "2022-03-19",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL GIN + B-Tree",
      "url": "https://dev.to/aws-heroes/postgresql-gin-b-tree-25en",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL GIN + B-Tree.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1041772",
      "database": "Oracle Database",
      "date": "2022-04-01",
      "employment_period": "yugabyte-2021",
      "title": "Directus on YugabyteDB",
      "url": "https://dev.to/yugabyte/directus-on-yugabytedb-4fpl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Attempts to run the Directus no-code data platform against YugabyteDB, comparing it to an open-source equivalent of Oracle APEX and linking a later compatibility fix.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1041772",
      "database": "PostgreSQL",
      "date": "2022-04-01",
      "employment_period": "yugabyte-2021",
      "title": "Directus on YugabyteDB",
      "url": "https://dev.to/yugabyte/directus-on-yugabytedb-4fpl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Currently, YugabyteDB is not one of the database supported but, because we are PostgreSQL compatible, it worths a try, isn't it?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1041772",
      "database": "YugabyteDB",
      "date": "2022-04-01",
      "employment_period": "yugabyte-2021",
      "title": "Directus on YugabyteDB",
      "url": "https://dev.to/yugabyte/directus-on-yugabytedb-4fpl",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Both work and are scalable, as, by default, YugabyteDB with HASH distribute on the first primary key column.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1031715",
      "database": "PostgreSQL",
      "date": "2022-04-04",
      "employment_period": "yugabyte-2021",
      "title": "Index Skip Scan in YugabyteDB 🚀🐘",
      "url": "https://dev.to/yugabyte/index-skip-scan-in-yugabytedb-2ao2",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast",
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In this db<>fiddle on PostgreSQL, only the `Index Cond:` is fast access in the index structure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1031715",
      "database": "YugabyteDB",
      "date": "2022-04-04",
      "employment_period": "yugabyte-2021",
      "title": "Index Skip Scan in YugabyteDB 🚀🐘",
      "url": "https://dev.to/yugabyte/index-skip-scan-in-yugabytedb-2ao2",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 2,
      "mixed": true,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 12,
      "positive_signals": [
        "fast",
        "faster",
        "useful"
      ],
      "critical_signals": [
        "worse"
      ],
      "evidence_excerpt": "It reads 99999+1 index entries, from the range scan, but the worse are the many the hops to the table, for each index entry: ``` row_name | rocksdb_#_db_seek | rocksdb_#_db_next ---------------------------+-------------------+------------------- yugabyte demo 10.0.0.62 | 100000 | 100000 yugabyte demo_a 10.0.0.61 | 98 | 100097 (2 rows) ``` This happens with secondary indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046231",
      "database": "Oracle Database",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 1 Create the cluster",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-1-create-the-cluster-53m2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Starts a multi-part cost study by creating a dedicated Oracle Cloud compartment and provisioning a managed Kubernetes cluster with OKE's quick-create option.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046231",
      "database": "YugabyteDB",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 1 Create the cluster",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-1-create-the-cluster-53m2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The cost of OKE for YugabyteDB - 1 Create the cluster.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046241",
      "database": "Cassandra",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 2 - Install from Helm chart",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-2-install-from-helm-chart-b7l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "From outside, we use the load balancers that have been automatically created by OKE, also tagged with `OKEclusterName: yugabytedb`: !Image description On is the `master` console, `141.147.107.246`, listening on port 7000: !Image description The other is the `tserver` service, `141.147.106.110`, listening on: - 5433 the YSQL endpoint (the PostgreSQL-compatible API) - 9042 the YCQL endpoint (the Cassandra-compatible AP",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046241",
      "database": "Oracle Database",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 2 - Install from Helm chart",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-2-install-from-helm-chart-b7l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Installs YugabyteDB via Helm on Oracle Kubernetes Engine, switching the default StorageClass to the oci-bv CSI plugin and provisioning 1TB per persistent volume.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046241",
      "database": "PostgreSQL",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 2 - Install from Helm chart",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-2-install-from-helm-chart-b7l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The PostgreSQL-compatible enpoint is exposed by the `tserver`load balancer: `postgresql://141.147.106.110:5433/yugabyte`: ```bash $ psql postgresql://141.147.106.110:5433/yugabyte psql (13.5, server 11.2-YB-2.13.0.0-b0) Type \"help\" for help.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046241",
      "database": "YugabyteDB",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 2 - Install from Helm chart",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-2-install-from-helm-chart-b7l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In this post I'll install YugabyteDB ## Namespace I'm creating a namespace to install YugabyteDB ```bash dev@cloudshell:~ (uk-london-1)$ kubectl create namespace yb-demo namespace/yb-demo created ``` ## Storage class I'm changing the default StorageClass to `oci-bv`, the recommended Container Storage Interface (CSI) volume plugin, rather than the default `oci` (the FlexVolume one).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046257",
      "database": "Oracle Database",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 3 - Run a workload",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-3-run-a-workload-pp7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Generates load on the Oracle Kubernetes Engine YugabyteDB cluster with the ybdemo container, using the cluster-aware JDBC driver to balance connections across pods.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046257",
      "database": "YugabyteDB",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 3 - Run a workload",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-3-run-a-workload-pp7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The StatefulSets have 3 pods: ```bash dev@cloudshell:~ (uk-london-1)$ kubectl get statefulsets -n yb-demo -o wide NAME READY AGE CONTAINERS IMAGES yb-master 3/3 66m yb-master,yb-cleanup yugabytedb/yugabyte:2.13.0.0-b42,yugabytedb/yugabyte:2.13.0.0-b42 yb-tserver 3/3 66m yb-tserver,yb-cleanup yugabytedb/yugabyte:2.13.0.0-b42,yugabytedb/yugabyte:2.13.0.0-b42 ``` This is sufficient for `yb-master`, the control plane, bu",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046260",
      "database": "Oracle Database",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 4 - Explore the cost",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-4-explore-the-cost-4k9a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reports that a 9-pod YugabyteDB cluster on Oracle Kubernetes Engine, handling 1000 inserts/sec and 900 read threads, cost about CHF 2.81 per hour to run.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1046260",
      "database": "YugabyteDB",
      "date": "2022-04-11",
      "employment_period": "yugabyte-2021",
      "title": "The cost of OKE for YugabyteDB - 4 - Explore the cost",
      "url": "https://dev.to/yugabyte/the-cost-of-oke-for-yugabytedb-4-explore-the-cost-4k9a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The cost of OKE for YugabyteDB - 4 - Explore the cost.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1057256",
      "database": "PostgreSQL",
      "date": "2022-04-17",
      "employment_period": "yugabyte-2021",
      "title": "Soft delete cascade in PostgreSQL🐘 and YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/soft-delete-cascade-in-postgresql-and-yugabytedb-166n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Soft delete cascade in PostgreSQL🐘 and YugabyteDB🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1057256",
      "database": "YugabyteDB",
      "date": "2022-04-17",
      "employment_period": "yugabyte-2021",
      "title": "Soft delete cascade in PostgreSQL🐘 and YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/soft-delete-cascade-in-postgresql-and-yugabytedb-166n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Soft delete cascade in PostgreSQL🐘 and YugabyteDB🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1061480",
      "database": "PostgreSQL",
      "date": "2022-04-21",
      "employment_period": "yugabyte-2021",
      "title": "cluster-aware psycopg2 🚀",
      "url": "https://dev.to/franckpachot/cluster-aware-psycopg2-405i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Notes psycopg2 isn't cluster-aware because it targets single-primary PostgreSQL, contrasting it with YugabyteDB's Smart Drivers which detect available cluster nodes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1061480",
      "database": "YugabyteDB",
      "date": "2022-04-21",
      "employment_period": "yugabyte-2021",
      "title": "cluster-aware psycopg2 🚀",
      "url": "https://dev.to/franckpachot/cluster-aware-psycopg2-405i",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You can manually balance your nodes, but, with a distributed SQL database like YugabyteDB, nodes can be added or removed transparently, to scale with the load or be resilient to failures.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1066892",
      "database": "PostgreSQL",
      "date": "2022-04-29",
      "employment_period": "yugabyte-2021",
      "title": "Read Committed is a must for Postgres-compatible distributed SQL databases",
      "url": "https://dev.to/yugabyte/read-committed-is-a-must-for-postgres-compatible-distributed-sql-databases-59pf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Read Committed is a must for Postgres-compatible distributed SQL databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1066892",
      "database": "YugabyteDB",
      "date": "2022-04-29",
      "employment_period": "yugabyte-2021",
      "title": "Read Committed is a must for Postgres-compatible distributed SQL databases",
      "url": "https://dev.to/yugabyte/read-committed-is-a-must-for-postgres-compatible-distributed-sql-databases-59pf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB was developed with the principle that \"the higher the better\" in mind, and it utilizes \"Snapshot Isolation\" for the Read Committed isolation level.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1070871",
      "database": "YugabyteDB",
      "date": "2022-04-29",
      "employment_period": "yugabyte-2021",
      "title": "🐘🚀 Update/Insert/Soft-Delete from a JSON payload",
      "url": "https://dev.to/yugabyte/updateinsertsoft-delete-from-a-json-payload-4l0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "efficient",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "With a distributed database like **YugabyteDB**, it is more efficient to process this in the database, because that can scale (we can connecto to any node), run in one server-side transaction (easier to handle transparent retries in case of clock skew) and reduce the roundtrips (working on batches of rows).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1075196",
      "database": "PostgreSQL",
      "date": "2022-05-04",
      "employment_period": "yugabyte-2021",
      "title": "docker-compose.yaml to start YugabyteDB with POSTGRES_USER POSTGRES_PASSWORD POSTGRES_DB env",
      "url": "https://dev.to/yugabyte/docker-composeyaml-to-start-yugabytedb-with-postgresuser-postgrespassword-postgresdb-env-4do3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows how to replicate the PostgreSQL Docker image's POSTGRES_USER, POSTGRES_PASSWORD, and POSTGRES_DB variables for YugabyteDB, whose image doesn't auto-create a database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1075196",
      "database": "YugabyteDB",
      "date": "2022-05-04",
      "employment_period": "yugabyte-2021",
      "title": "docker-compose.yaml to start YugabyteDB with POSTGRES_USER POSTGRES_PASSWORD POSTGRES_DB env",
      "url": "https://dev.to/yugabyte/docker-composeyaml-to-start-yugabytedb-with-postgresuser-postgrespassword-postgresdb-env-4do3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "docker-compose.yaml to start YugabyteDB with POSTGRES_USER POSTGRES_PASSWORD POSTGRES_DB env.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1079172",
      "database": "PostgreSQL",
      "date": "2022-05-08",
      "employment_period": "yugabyte-2021",
      "title": "🚀 YugabyteDB on fly.io - I - yugabyted",
      "url": "https://dev.to/yugabyte/yugabytedb-on-flyio-i-yugabyted-2eo7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "To run this, you need an account on and I'll show how to deploy YugabyteDB, the Open-Source, PostgreSQL compatible, Distributed SQL Database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1079172",
      "database": "YugabyteDB",
      "date": "2022-05-08",
      "employment_period": "yugabyte-2021",
      "title": "🚀 YugabyteDB on fly.io - I - yugabyted",
      "url": "https://dev.to/yugabyte/yugabytedb-on-flyio-i-yugabyted-2eo7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The advantage of a distributed SQL database like YugabyteDB is that you don't need shared storage: each VM will have its volume.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1086767",
      "database": "YugabyteDB",
      "date": "2022-05-16",
      "employment_period": "yugabyte-2021",
      "title": "🐘OID <-> 🚀table_id",
      "url": "https://dev.to/yugabyte/oid-tableid-53dh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains that the YugabyteDB web console's displayed Table OID identifies a YSQL relation, while DocDB storage instead uses a UUID-style table id shared with YCQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1091790",
      "database": "PostgreSQL",
      "date": "2022-05-21",
      "employment_period": "yugabyte-2021",
      "title": "\"I want to try it\" 🚀 YugabyteDB at KubeCon",
      "url": "https://dev.to/yugabyte/i-want-to-try-it-yugabytedb-at-kubecon-3cm7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Recaps KubeCon Europe 2022 booth conversations, showing a single docker run command starts yugabyted and lets any PostgreSQL tool connect via ysqlsh like psql.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1091790",
      "database": "YugabyteDB",
      "date": "2022-05-21",
      "employment_period": "yugabyte-2021",
      "title": "\"I want to try it\" 🚀 YugabyteDB at KubeCon",
      "url": "https://dev.to/yugabyte/i-want-to-try-it-yugabytedb-at-kubecon-3cm7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "As a Developer Advocate, staying at the Yugabyte booth at KubeCon Europe 2022 was fun with great discussions around distributed SQL databases with awesome people.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1097372",
      "database": "PostgreSQL",
      "date": "2022-05-27",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL: An example of using WITH clauses to decompose the problem",
      "url": "https://dev.to/aws-heroes/postgresql-an-example-of-using-with-clauses-to-decompose-the-problem-316o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL: An example of using WITH clauses to decompose the problem.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1097668",
      "database": "YugabyteDB",
      "date": "2022-05-27",
      "employment_period": "yugabyte-2021",
      "title": "pg_stat_statements in YugabyteDB",
      "url": "https://dev.to/yugabyte/pgstatstatements-in-yugabytedb-5871",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "pg_stat_statements in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1099799",
      "database": "PostgreSQL",
      "date": "2022-05-30",
      "employment_period": "yugabyte-2021",
      "title": "Parsing YugabyteDB version()",
      "url": "https://dev.to/yugabyte/parsing-yugabytedb-version-m4o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Parses PostgreSQL and YugabyteDB version() strings with regex, showing YugabyteDB appends its own build numbers where an even minor marks stable and odd marks preview.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1099799",
      "database": "YugabyteDB",
      "date": "2022-05-30",
      "employment_period": "yugabyte-2021",
      "title": "Parsing YugabyteDB version()",
      "url": "https://dev.to/yugabyte/parsing-yugabytedb-version-m4o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Parsing YugabyteDB version().",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1080734",
      "database": "PostgreSQL",
      "date": "2022-06-01",
      "employment_period": "yugabyte-2021",
      "title": "1 million rows insert",
      "url": "https://dev.to/yugabyte/1-million-rows-insert-59c8",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "But bulk load is usually the first thing you do, and this may give a bad impression of performance, like this git issue comparing with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1080734",
      "database": "YugabyteDB",
      "date": "2022-06-01",
      "employment_period": "yugabyte-2021",
      "title": "1 million rows insert",
      "url": "https://dev.to/yugabyte/1-million-rows-insert-59c8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Benchmarks a one-million-row insert across every Docker Hub YugabyteDB version, finding a bulk-load speedup landed at 2.1.3 with no further gain until version 2.13.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1101473",
      "database": "YugabyteDB",
      "date": "2022-06-01",
      "employment_period": "yugabyte-2021",
      "title": "🔓 tracing writes and locks in YugabyteDB",
      "url": "https://dev.to/franckpachot/tracing-writes-and-locks-in-yugabytedb-3gbh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "🔓 tracing writes and locks in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1073580",
      "database": "Oracle Database",
      "date": "2022-06-02",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Predicate Push Down",
      "url": "https://dev.to/yugabyte/yugabytedb-predicate-push-down-pbb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Even if Exadata is a monolithic database machine, and reads full blocks rather than rows and columns, it has the same goal: avoid sending rows though the network that will be filtered out later.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1073580",
      "database": "PostgreSQL",
      "date": "2022-06-02",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Predicate Push Down",
      "url": "https://dev.to/yugabyte/yugabytedb-predicate-push-down-pbb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "And a ForeignScan for a SELECT on a YugabyteDB table is actually displayed as \"Seq Scan\" in explain.c to avoid confusion for PostgreSQL users.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1073580",
      "database": "YugabyteDB",
      "date": "2022-06-02",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Predicate Push Down",
      "url": "https://dev.to/yugabyte/yugabytedb-predicate-push-down-pbb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Predicate Push Down.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1103069",
      "database": "PostgreSQL",
      "date": "2022-06-03",
      "employment_period": "yugabyte-2021",
      "title": "Build a PostgreSQL Docker image with pg_hint_plan and pg_stat_statements",
      "url": "https://dev.to/yugabyte/build-a-postgresql-docker-image-with-pghintplan-and-pgstatstatements-46pa",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Build a PostgreSQL Docker image with pg_hint_plan and pg_stat_statements.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1103903",
      "database": "YugabyteDB",
      "date": "2022-06-03",
      "employment_period": "yugabyte-2021",
      "title": "ERROR: Timed out: BackfillIndex RPC",
      "url": "https://dev.to/yugabyte/error-timed-out-backfillindex-rpc-2eg3",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "Reproduces the default one-hour backfill_index_client_rpc_timeout_ms causing CREATE INDEX to fail in YugabyteDB 2.12.5, using an artificially slow indexed function.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1106580",
      "database": "YugabyteDB",
      "date": "2022-06-07",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB range sharding: ASC or DESC? (Backward Scan in🚀)",
      "url": "https://dev.to/yugabyte/yugabytedb-range-sharding-asc-or-desc-57bn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "rows=` or `Rows removed by filter`) I've written this post after a little test I did in last week Twitch session - the record is here: ## YugabyteDB 2.19 is a bit faster This blog post was with version 2.13 and I've run it in 2.19 where some optimizations were implemented.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1107131",
      "database": "YugabyteDB",
      "date": "2022-06-07",
      "employment_period": "yugabyte-2021",
      "title": "Quickly get short stack from a YugabyteDB tserver",
      "url": "https://dev.to/yugabyte/quickly-get-short-stack-from-a-yugabytedb-tserver-2j03",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Quickly get short stack from a YugabyteDB tserver.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1108700",
      "database": "PostgreSQL",
      "date": "2022-06-09",
      "employment_period": "yugabyte-2021",
      "title": "Predictable plans with pg_hint_plan full hinting",
      "url": "https://dev.to/yugabyte/predictable-plans-with-pghintplan-full-hinting-1do3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Yes, PostgreSQL has query planner hints With PostgreSQL, the extension to do it, pg_hint_plan is really good, but not widely used because not included in the core, not even in contrib.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1108700",
      "database": "YugabyteDB",
      "date": "2022-06-09",
      "employment_period": "yugabyte-2021",
      "title": "Predictable plans with pg_hint_plan full hinting",
      "url": "https://dev.to/yugabyte/predictable-plans-with-pghintplan-full-hinting-1do3",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 3,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [
        "bad",
        "worse"
      ],
      "evidence_excerpt": "As bad execution plans are worse in high performance distributed SQL databases, YugabyteDB has pg_hint_plan installed and enabled by default.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1111824",
      "database": "YugabyteDB",
      "date": "2022-06-12",
      "employment_period": "yugabyte-2021",
      "title": "Nested Loop performance in YugabyteDB",
      "url": "https://dev.to/yugabyte/nested-loop-performance-in-yugabytedb-g1i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Nested Loop performance in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1113679",
      "database": "PostgreSQL",
      "date": "2022-06-14",
      "employment_period": "yugabyte-2021",
      "title": "PITR snapshot: an easy continuous backup / flashback / backtrack for application releases",
      "url": "https://dev.to/yugabyte/pitr-snapshot-an-easy-flashback-backtrack-for-application-releases-3cn6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast",
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Proposes restoring a Point-In-Time-Recovery snapshot as a faster rollback for a failed application release than relying on PostgreSQL's transactional DDL alone.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1113679",
      "database": "YugabyteDB",
      "date": "2022-06-14",
      "employment_period": "yugabyte-2021",
      "title": "PITR snapshot: an easy continuous backup / flashback / backtrack for application releases",
      "url": "https://dev.to/yugabyte/pitr-snapshot-an-easy-flashback-backtrack-for-application-releases-3cn6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "And all is clean, no hidden table: !Table without snapshot ## Summary YugabyteDB doesn't support transactional DDL yet, but the need to protect a maintenance window full of DDL and DML is achieved with fast Point In Time Recovery.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1114705",
      "database": "PostgreSQL",
      "date": "2022-06-15",
      "employment_period": "yugabyte-2021",
      "title": "(beta) yugabyted GUI",
      "url": "https://dev.to/yugabyte/beta-yugabyted-gui-3i4m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "the YugabyteDB UI is GA and started automatically by `yugabyted` and is now on port 15433** ``` docker run -d --name yb -p 5433:5433 -p 15433:15433 -p 7000:7000 \\ docker.io/yugabytedb/yugabyte:2.17.0.0-b24 \\ bin/yugabyted start --daemon=false ``` and open --- To get started with YugabyteDB (PostgreSQL-compatible distributed SQL database) you have two easy ways: - [cloud.yugabyte.com](cloud.yugabyte.com) for a managed",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1114705",
      "database": "YugabyteDB",
      "date": "2022-06-15",
      "employment_period": "yugabyte-2021",
      "title": "(beta) yugabyted GUI",
      "url": "https://dev.to/yugabyte/beta-yugabyted-gui-3i4m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "the YugabyteDB UI is GA and started automatically by `yugabyted` and is now on port 15433** ``` docker run -d --name yb -p 5433:5433 -p 15433:15433 -p 7000:7000 \\ docker.io/yugabytedb/yugabyte:2.17.0.0-b24 \\ bin/yugabyted start --daemon=false ``` and open --- To get started with YugabyteDB (PostgreSQL-compatible distributed SQL database) you have two easy ways: - [cloud.yugabyte.com](cloud.yugabyte.com) for a managed",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:23276",
      "database": "PostgreSQL",
      "date": "2022-06-17",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL Sharding: How Many Tablets and at What Size?",
      "url": "https://www.yugabyte.com/blog/distributed-sql-sharding-how-many-tablets-size/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But YugabyteDB is PostgreSQL compatible and also used to migrate existing applications to cloud native infrastructure.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:23276",
      "database": "YugabyteDB",
      "date": "2022-06-17",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL Sharding: How Many Tablets and at What Size?",
      "url": "https://www.yugabyte.com/blog/distributed-sql-sharding-how-many-tablets-size/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Details YugabyteDB's auto-splitting algorithm, including the low- and high-phase tablet size thresholds visible in the yb-master console, for tuning initial tablet count per table.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1119122",
      "database": "PostgreSQL",
      "date": "2022-06-22",
      "employment_period": "yugabyte-2021",
      "title": "🚀 hash+hash partitioning+sharding",
      "url": "https://dev.to/yugabyte/hashhash-partitioningsharding-256a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Combines PostgreSQL declarative hash partitioning with YugabyteDB's automatic hash sharding, contrasting it with range partitioning used for time-window or tenant grouping.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1119122",
      "database": "YugabyteDB",
      "date": "2022-06-22",
      "employment_period": "yugabyte-2021",
      "title": "🚀 hash+hash partitioning+sharding",
      "url": "https://dev.to/yugabyte/hashhash-partitioningsharding-256a",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL has also hash partitioning, but you probably don't use it in YugabyteDB because its main goal is distribution, and this is better achieved with sharding to tablets: more partitions, automatic rebalance, global indexes,...",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1123590",
      "database": "YugabyteDB",
      "date": "2022-06-27",
      "employment_period": "yugabyte-2021",
      "title": "Local reads from 🚀YugabyteDB Read Replicas",
      "url": "https://dev.to/yugabyte/local-reads-from-yugabytedb-read-replicas-5bg5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Extends a 3-node RF=3 YugabyteDB cluster in Europe with non-voting Read Replica nodes elsewhere, trading bounded read staleness for lower local read latency.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1123831",
      "database": "YugabyteDB",
      "date": "2022-06-27",
      "employment_period": "yugabyte-2021",
      "title": "Local reads from 🚀YugabyteDB raft followers",
      "url": "https://dev.to/yugabyte/local-reads-from-yugabytedb-raft-followers-5mk",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Explains how worldwide users of a single-region YugabyteDB deployment can read from local Raft followers, accepting staleness in exchange for avoiding cross-region latency.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1124310",
      "database": "YugabyteDB",
      "date": "2022-06-30",
      "employment_period": "yugabyte-2021",
      "title": "geo-distribution with 🚀 YugabyteDB tablespaces",
      "url": "https://dev.to/yugabyte/geo-distribution-with-yugabytedb-tablespaces-4ko6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "geo-distribution with 🚀 YugabyteDB tablespaces.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1131623",
      "database": "YugabyteDB",
      "date": "2022-07-04",
      "employment_period": "yugabyte-2021",
      "title": "Optimizing Nested Loop joins on YugabyteDB with jOOQ",
      "url": "https://dev.to/yugabyte/optimizing-nested-loop-joins-on-yugabytedb-with-jooq-keg",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "Implements a jOOQ version of the workaround for YugabyteDB issue #4903, prefetching join-column values into a typesafe WHERE IN() clause instead of a slow Nested Loop.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1123126",
      "database": "PostgreSQL",
      "date": "2022-07-05",
      "employment_period": "yugabyte-2021",
      "title": "The YugabyteDB configuration parameters (GFLAGs and GUCs)",
      "url": "https://dev.to/franckpachot/the-yugabytedb-configuration-parameters-gflags-and-gucs-l31",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distinguishes YugabyteDB's cluster-wide GFlags, set when starting yb-master and yb-tserver processes, from PostgreSQL-style per-session GUCs set at runtime.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1123126",
      "database": "YugabyteDB",
      "date": "2022-07-05",
      "employment_period": "yugabyte-2021",
      "title": "The YugabyteDB configuration parameters (GFLAGs and GUCs)",
      "url": "https://dev.to/franckpachot/the-yugabytedb-configuration-parameters-gflags-and-gucs-l31",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The YugabyteDB configuration parameters (GFLAGs and GUCs).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1134643",
      "database": "PostgreSQL",
      "date": "2022-07-07",
      "employment_period": "yugabyte-2021",
      "title": "JPA and PostgreSQL text",
      "url": "https://dev.to/yugabyte/jpa-and-postgresql-text-2ma6",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 2,
      "critical_weight": 3,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "bug",
        "limitation"
      ],
      "evidence_excerpt": "However you may encounter issues when upgrading with a table that was defined as `text`: ## @Column(columnDefinition=\"oid\") Here is the workaround for previous versions with this bug, to generate an OID datatype, but this is PostgreSQL-specific: ```java @Column(columnDefinition=\"oid\") @Lob ``` Generated DDL: ```sql create table unlimited_text ( id int8 not null, name oid, primary key (id) ) ``` This works correctly i",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1134643",
      "database": "YugabyteDB",
      "date": "2022-07-07",
      "employment_period": "yugabyte-2021",
      "title": "JPA and PostgreSQL text",
      "url": "https://dev.to/yugabyte/jpa-and-postgresql-text-2ma6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Even more with YugabyteDB which stores it as a document, without block limitations, so no need to specify a size if you don't want to constrain it.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1138293",
      "database": "YugabyteDB",
      "date": "2022-07-13",
      "employment_period": "yugabyte-2021",
      "title": "access the local partition only in 🚀 YugabyteDB geo-partitioned tables",
      "url": "https://dev.to/yugabyte/access-the-local-partition-only-in-yugabytedb-geo-partitioned-tables-1df6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "access the local partition only in 🚀 YugabyteDB geo-partitioned tables.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1141384",
      "database": "YugabyteDB",
      "date": "2022-07-15",
      "employment_period": "yugabyte-2021",
      "title": "🚀 YSQL-DocDB calls with yb_debug_log_docdb_requests",
      "url": "https://dev.to/franckpachot/ysql-docdb-calls-with-ybdebuglogdocdbrequests-127b",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Enables yb_debug_log_docdb_requests on a single-node YugabyteDB lab to trace calls between the YSQL layer and DocDB, confirming GitHub issue 12553 was already fixed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1142896",
      "database": "PostgreSQL",
      "date": "2022-07-18",
      "employment_period": "yugabyte-2021",
      "title": "IoT benchmark on Distributed SQL from MaibornWolff on AWS EKS",
      "url": "https://dev.to/aws-heroes/iot-benchmark-on-distributed-sql-from-maibornwolff-on-aws-eks-3ag8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reruns MaibornWolff's published IoT sensor-ingest benchmark, optimized for both PostgreSQL and YugabyteDB, on a smaller 4-node, 32-vCPU AWS EKS cluster.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1142896",
      "database": "YugabyteDB",
      "date": "2022-07-18",
      "employment_period": "yugabyte-2021",
      "title": "IoT benchmark on Distributed SQL from MaibornWolff on AWS EKS",
      "url": "https://dev.to/aws-heroes/iot-benchmark-on-distributed-sql-from-maibornwolff-on-aws-eks-3ag8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB combines the scalability of NoSQL (fast ingest) with all SQL features (sequence here).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1143494",
      "database": "PostgreSQL",
      "date": "2022-07-18",
      "employment_period": "yugabyte-2021",
      "title": "⏳ Timing database calls to 🐘PostgreSQL or 🚀YugabyteDB (strace)",
      "url": "https://dev.to/yugabyte/timing-database-calls-to-postgresql-or-yugabytedb-strace-28ij",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "⏳ Timing database calls to 🐘PostgreSQL or 🚀YugabyteDB (strace).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1143494",
      "database": "YugabyteDB",
      "date": "2022-07-18",
      "employment_period": "yugabyte-2021",
      "title": "⏳ Timing database calls to 🐘PostgreSQL or 🚀YugabyteDB (strace)",
      "url": "https://dev.to/yugabyte/timing-database-calls-to-postgresql-or-yugabytedb-strace-28ij",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "⏳ Timing database calls to 🐘PostgreSQL or 🚀YugabyteDB (strace).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1143774",
      "database": "Amazon DynamoDB",
      "date": "2022-07-20",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB cardinality estimation in the absence of ANALYZE statistics",
      "url": "https://dev.to/yugabyte/yugabytedb-cardinality-estimation-in-the-absence-of-analyze-statistics-1c1k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "I'll quickly compare with two databases, one SQL, Oracle Database, and one NoSQL, DynamoDB, to explain that having the access path dependent on rules may be a good feature.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1143774",
      "database": "Oracle Database",
      "date": "2022-07-20",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB cardinality estimation in the absence of ANALYZE statistics",
      "url": "https://dev.to/yugabyte/yugabytedb-cardinality-estimation-in-the-absence-of-analyze-statistics-1c1k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I'll quickly compare with two databases, one SQL, Oracle Database, and one NoSQL, DynamoDB, to explain that having the access path dependent on rules may be a good feature.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1143774",
      "database": "PostgreSQL",
      "date": "2022-07-20",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB cardinality estimation in the absence of ANALYZE statistics",
      "url": "https://dev.to/yugabyte/yugabytedb-cardinality-estimation-in-the-absence-of-analyze-statistics-1c1k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains that with ANALYZE still beta as of YugabyteDB 2.15, the PostgreSQL-based planner falls back to fixed heuristics resembling a rule-based optimizer for tables lacking statistics.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1143774",
      "database": "YugabyteDB",
      "date": "2022-07-20",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB cardinality estimation in the absence of ANALYZE statistics",
      "url": "https://dev.to/yugabyte/yugabytedb-cardinality-estimation-in-the-absence-of-analyze-statistics-1c1k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB cardinality estimation in the absence of ANALYZE statistics.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1145862",
      "database": "PostgreSQL",
      "date": "2022-07-20",
      "employment_period": "yugabyte-2021",
      "title": "📜 select * from 🚀 logfile with 🐘 file_fdw",
      "url": "https://dev.to/franckpachot/select-from-logfile-with-filefdw-13eb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Queries the YugabyteDB PostgreSQL logfile directly from a SQL session using file_fdw combined with an awk script that decodes timestamps and adds line numbers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1145862",
      "database": "YugabyteDB",
      "date": "2022-07-20",
      "employment_period": "yugabyte-2021",
      "title": "📜 select * from 🚀 logfile with 🐘 file_fdw",
      "url": "https://dev.to/franckpachot/select-from-logfile-with-filefdw-13eb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Queries the YugabyteDB PostgreSQL logfile directly from a SQL session using file_fdw combined with an awk script that decodes timestamps and adds line numbers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1141117",
      "database": "YugabyteDB",
      "date": "2022-07-25",
      "employment_period": "yugabyte-2021",
      "title": "Default tablet splitting in YugabyteDB 🚀",
      "url": "https://dev.to/yugabyte/default-tablet-splitting-in-yugabytedb-4lnf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Default tablet splitting in YugabyteDB 🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1151087",
      "database": "PostgreSQL",
      "date": "2022-07-25",
      "employment_period": "yugabyte-2021",
      "title": "🟩🚀 Draxlr SQL query/dashboard builder on YugabyteDB managed",
      "url": "https://dev.to/yugabyte/draxlr-sql-querydashboard-builder-on-yugabytedb-managed-4ngk",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "On the YugabyteDB portal, once the cluster is created, click on \"Add IP Allow List\" !Allow This is where you enter the IP from the previous step so that an inbound rule is added for it: !Image description Now you can click on the \"Connect\" button, \"Connect to your Application\", \"YSQL\" (the PostgreSQL compatible API), \"Parameter\" and get the host name !Image description ## Draxlr connect info You got the hostname from",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1151087",
      "database": "YugabyteDB",
      "date": "2022-07-25",
      "employment_period": "yugabyte-2021",
      "title": "🟩🚀 Draxlr SQL query/dashboard builder on YugabyteDB managed",
      "url": "https://dev.to/yugabyte/draxlr-sql-querydashboard-builder-on-yugabytedb-managed-4ngk",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "🟩🚀 Draxlr SQL query/dashboard builder on YugabyteDB managed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1150878",
      "database": "PostgreSQL",
      "date": "2022-07-26",
      "employment_period": "yugabyte-2021",
      "title": "Loose Index Scan aka Skip Scan in PostgreSQL 🐘🚀",
      "url": "https://dev.to/yugabyte/loose-index-scan-aka-skip-scan-in-postgresql-1jfo",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "drawback"
      ],
      "evidence_excerpt": "He mentions the PostgreSQL alternative with Recursive CTE documented as Loose indexscan but also that _the biggest drawback with this approach is that it's much more difficult to return multiple columns of data_.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1150878",
      "database": "YugabyteDB",
      "date": "2022-07-26",
      "employment_period": "yugabyte-2021",
      "title": "Loose Index Scan aka Skip Scan in PostgreSQL 🐘🚀",
      "url": "https://dev.to/yugabyte/loose-index-scan-aka-skip-scan-in-postgresql-1jfo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I'm creating the same tables as in the previous post (and Ryan Booz article): ```sql drop table truck_readings; create table truck_readings ( truck_id bigint ,ts timestamptz ,milage int ,primary key(truck_id, ts) ); ``` I am using YugabyteDB here, open-source distributed SQL database which is compatible with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1156074",
      "database": "MongoDB",
      "date": "2022-07-31",
      "employment_period": "yugabyte-2021",
      "title": "Embedded FerretDB with YugabyteDB: MongoDB API on distributed SQL 🚀☁",
      "url": "https://dev.to/yugabyte/embedded-ferretdb-with-yugabytedb-mongodb-api-on-distributed-sql-jbi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Embedded FerretDB with YugabyteDB: MongoDB API on distributed SQL 🚀☁.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1156074",
      "database": "PostgreSQL",
      "date": "2022-07-31",
      "employment_period": "yugabyte-2021",
      "title": "Embedded FerretDB with YugabyteDB: MongoDB API on distributed SQL 🚀☁",
      "url": "https://dev.to/yugabyte/embedded-ferretdb-with-yugabytedb-mongodb-api-on-distributed-sql-jbi",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Without indexes, all queries will be Seq Scan and then you may benefit from enabling predicate pushdown to avoid having rows sent from storage nodes (table servers) to the one that is processing the query (PostgreSQL backend): ```sql yugabyte=> alter user admin set yb_enable_expression_pushdown = on; ALTER ROLE ```",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1156074",
      "database": "YugabyteDB",
      "date": "2022-07-31",
      "employment_period": "yugabyte-2021",
      "title": "Embedded FerretDB with YugabyteDB: MongoDB API on distributed SQL 🚀☁",
      "url": "https://dev.to/yugabyte/embedded-ferretdb-with-yugabytedb-mongodb-api-on-distributed-sql-jbi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 16,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "I'll runn a simple `sed` command to replace it with my YugabyteDB Managed cloud connection string: `postgres://admin:MyPassword@eu-west-1.77d36171-1337-4116-93ff-587a5ea344be.aws.ybdb.io:5433/yugabyte` ```sh git clone cd embedded-example sed -e '/PostgreSQLURL/s?\".*\"?\"postgres://admin:MyPassword@eu-west-1.77d36171-1337-4116-93ff-587a5ea344be.aws.ybdb.io:5433/yugabyte\"?options=-c%20enable_nestloop%3Doff' -i main.go go",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1164221",
      "database": "YugabyteDB",
      "date": "2022-08-10",
      "employment_period": "yugabyte-2021",
      "title": "Bookmarklet for YugabyteDB table's tablets",
      "url": "https://dev.to/yugabyte/bookmarklet-for-yugabytedb-tables-tablets-1o6h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Bookmarklet for YugabyteDB table's tablets.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1170852",
      "database": "YugabyteDB",
      "date": "2022-08-18",
      "employment_period": "yugabyte-2021",
      "title": "Fastest start of YugabyteDB for a small lab",
      "url": "https://dev.to/yugabyte/fastest-start-of-yugabytedb-for-a-small-lab-283a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Fastest start of YugabyteDB for a small lab.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1171212",
      "database": "YugabyteDB",
      "date": "2022-08-19",
      "employment_period": "yugabyte-2021",
      "title": "Parallelizing aggregates in YugabyteDB",
      "url": "https://dev.to/yugabyte/parallelizing-aggregates-in-yugabytedb-3eak",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Parallelizing aggregates in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1174307",
      "database": "PostgreSQL",
      "date": "2022-08-23",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan with subqueries",
      "url": "https://dev.to/aws-heroes/pghintplan-with-subqueries-47nm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This example runs on PostgreSQL (with `pg_hint_plan` extensions) or compatible (like YugabyteDB where `pg_hint_plan` is installed by default)",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1174307",
      "database": "YugabyteDB",
      "date": "2022-08-23",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan with subqueries",
      "url": "https://dev.to/aws-heroes/pghintplan-with-subqueries-47nm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This example runs on PostgreSQL (with `pg_hint_plan` extensions) or compatible (like YugabyteDB where `pg_hint_plan` is installed by default)",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:24061",
      "database": "Oracle Database",
      "date": "2022-08-25",
      "employment_period": "yugabyte-2021",
      "title": "Comparing the Maximum Availability of YugabyteDB and Oracle Database",
      "url": "https://www.yugabyte.com/blog/comparing-the-maximum-availability-of-yugabytedb-and-oracle-database/",
      "source": "yugabyte",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "better",
        "great",
        "overcomes stated disadvantages",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The Oracle MAA combines great technology developed, or bought, by Oracle through the last 30 years of commercial RDBMS growth.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:24061",
      "database": "PostgreSQL",
      "date": "2022-08-25",
      "employment_period": "yugabyte-2021",
      "title": "Comparing the Maximum Availability of YugabyteDB and Oracle Database",
      "url": "https://www.yugabyte.com/blog/comparing-the-maximum-availability-of-yugabytedb-and-oracle-database/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "incurs stated availability disadvantage"
      ],
      "evidence_excerpt": "When migrating from Oracle to PostgreSQL, the main concern is not the SQL features—because PostgreSQL is good enough for many applications and has an active community pushing new features.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:24061",
      "database": "YugabyteDB",
      "date": "2022-08-25",
      "employment_period": "yugabyte-2021",
      "title": "Comparing the Maximum Availability of YugabyteDB and Oracle Database",
      "url": "https://www.yugabyte.com/blog/comparing-the-maximum-availability-of-yugabytedb-and-oracle-database/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "delivers stated advantages",
        "good",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The good news is that YugabyteDB delivers the same SQL features found in PostgreSQL, on an engine built for resilience and scalability.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1179613",
      "database": "YugabyteDB",
      "date": "2022-08-30",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB in a Micro VM with no network",
      "url": "https://dev.to/yugabyte/yugabytedb-in-a-micro-vm-with-no-network-3ac3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "[In a previous post]( I mentioned how to start YugabyteDB fast for a quick short-life lab.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1180281",
      "database": "Oracle Database",
      "date": "2022-08-31",
      "employment_period": "yugabyte-2021",
      "title": "Fixing Docker image vulnerabilities (with centos2ol.sh)",
      "url": "https://dev.to/yugabyte/fixing-docker-image-vulnerabilities-with-centos2olsh-2ahc",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Oracle to the rescue: `centos2ol.sh` Oracle Linux is a free CentOS alternative, with better support.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1180281",
      "database": "PostgreSQL",
      "date": "2022-08-31",
      "employment_period": "yugabyte-2021",
      "title": "Fixing Docker image vulnerabilities (with centos2ol.sh)",
      "url": "https://dev.to/yugabyte/fixing-docker-image-vulnerabilities-with-centos2olsh-2ahc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example on how to deal with, on the YugabyteDB image (Open Source, PostgreSQL-compatible, Distributed SQL database).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1180281",
      "database": "YugabyteDB",
      "date": "2022-08-31",
      "employment_period": "yugabyte-2021",
      "title": "Fixing Docker image vulnerabilities (with centos2ol.sh)",
      "url": "https://dev.to/yugabyte/fixing-docker-image-vulnerabilities-with-centos2olsh-2ahc",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "docker scan yugabytedb/yugabyte:2.15.1.0-b175-ol7 ``` This is much better, with most of scanned vulnerabilities fixed: ``` Tested 275 dependencies for known vulnerabilities, found 81 vulnerabilities.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1181276",
      "database": "YugabyteDB",
      "date": "2022-09-01",
      "employment_period": "yugabyte-2021",
      "title": "Read local partition first, then global if not found locally",
      "url": "https://dev.to/yugabyte/read-locally-first-then-global-on-not-found-3cdn",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses YugabyteDB's yb_is_local_table(tableoid) function to probe the locally connected region's partition first before falling back to a global cross-region read.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1180019",
      "database": "MySQL",
      "date": "2022-09-05",
      "employment_period": "yugabyte-2021",
      "title": "SingleStore compared to YugabyteDB",
      "url": "https://dev.to/franckpachot/singlestore-compared-to-yugabytedb-jfp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I connect to it and run the creation of the DEPT table: ```sql CREATE TABLE dept ( deptno integer NOT NULL, dname text, loc text, description text, CONSTRAINT pk_dept PRIMARY KEY (deptno asc) ); ``` I'm lucky, this syntax is compatible with MySQL which can be very different from the SQL standard in many cases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1180019",
      "database": "PostgreSQL",
      "date": "2022-09-05",
      "employment_period": "yugabyte-2021",
      "title": "SingleStore compared to YugabyteDB",
      "url": "https://dev.to/franckpachot/singlestore-compared-to-yugabytedb-jfp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "There are many simple things: **YugabyteDB** is Open Source, PostgreSQL feature-compatible, and is a **distributed SQL** database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1180019",
      "database": "YugabyteDB",
      "date": "2022-09-05",
      "employment_period": "yugabyte-2021",
      "title": "SingleStore compared to YugabyteDB",
      "url": "https://dev.to/franckpachot/singlestore-compared-to-yugabytedb-jfp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SingleStore compared to YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1185937",
      "database": "PostgreSQL",
      "date": "2022-09-06",
      "employment_period": "yugabyte-2021",
      "title": "Nakama with YugabyteDB",
      "url": "https://dev.to/yugabyte/nakama-with-yugabytedb-1i5o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A YugabyteDB users asked about running Nakama ((server for realtime social and web & mobile game apps)) on YugabyteDB As YugabyteDB is PostgreSQL-compatible, this is as easy as pointing the connection to the new database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1185937",
      "database": "YugabyteDB",
      "date": "2022-09-06",
      "employment_period": "yugabyte-2021",
      "title": "Nakama with YugabyteDB",
      "url": "https://dev.to/yugabyte/nakama-with-yugabytedb-1i5o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Nakama with YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1190867",
      "database": "PostgreSQL",
      "date": "2022-09-12",
      "employment_period": "yugabyte-2021",
      "title": "EXPLAIN from pg_stat_statements normalized queries: how to always get the generic plan in 🐘&🚀",
      "url": "https://dev.to/yugabyte/explain-from-pgstatstatements-normalized-queries-how-to-always-get-the-generic-plan-in--5cfi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "But you can directly have a generic with `force_generic_plan`: ```sql postgres=# \\c postgres=# set plan_cache_mode = force_generic_plan; SET postgres=# explain execute test1(null,null); QUERY PLAN ----------------------------------------------------------------------- Index Scan using demo_pkey on demo (cost=0.15..8.17 rows=1 width=45) Index Cond: (i = $1) Filter: ((d IS NOT NULL) AND b AND (t = $2)) (3 rows) ``` Thi",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1190867",
      "database": "YugabyteDB",
      "date": "2022-09-12",
      "employment_period": "yugabyte-2021",
      "title": "EXPLAIN from pg_stat_statements normalized queries: how to always get the generic plan in 🐘&🚀",
      "url": "https://dev.to/yugabyte/explain-from-pgstatstatements-normalized-queries-how-to-always-get-the-generic-plan-in--5cfi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## YugabyteDB with PG11 compatibility YugabyteDB is currently compatible with PostgreSQL 11.2 which doesn't have this control.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1202566",
      "database": "Oracle Database",
      "date": "2022-09-26",
      "employment_period": "yugabyte-2021",
      "title": "Declarative vs. Application side Foreign Key referential integrity",
      "url": "https://dev.to/yugabyte/declarative-vs-application-side-foreign-key-referential-integrity-3n7n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "You may be suprised by this, but even the Oracle Database, the most popular traditional DB used for critical enterprise application does not support Serializable isolation level, doesn't provide range locks, and can lock rows only in exclusive mode.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1202566",
      "database": "PostgreSQL",
      "date": "2022-09-26",
      "employment_period": "yugabyte-2021",
      "title": "Declarative vs. Application side Foreign Key referential integrity",
      "url": "https://dev.to/yugabyte/declarative-vs-application-side-foreign-key-referential-integrity-3n7n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I'll run my example with a modern Distributed SQL database, built on PostgreSQL and bringing all those features to a scale-out architecture: YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1202566",
      "database": "YugabyteDB",
      "date": "2022-09-26",
      "employment_period": "yugabyte-2021",
      "title": "Declarative vs. Application side Foreign Key referential integrity",
      "url": "https://dev.to/yugabyte/declarative-vs-application-side-foreign-key-referential-integrity-3n7n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I'll run my example with a modern Distributed SQL database, built on PostgreSQL and bringing all those features to a scale-out architecture: YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1205346",
      "database": "Amazon Aurora",
      "date": "2022-09-28",
      "employment_period": "yugabyte-2021",
      "title": "Use case - daily limit: SELECT FOR UPDATE vs. UPDATE RETURNING in 🐘Aurora and 🚀YugabyteDB",
      "url": "https://dev.to/franckpachot/use-case-daily-limit-select-for-update-vs-update-returning-in-aurora-and-yugabytedb-142p",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [
        "worse side of comparison"
      ],
      "evidence_excerpt": "for update` is better than the best Aurora result above with the optimized code.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1205346",
      "database": "PostgreSQL",
      "date": "2022-09-28",
      "employment_period": "yugabyte-2021",
      "title": "Use case - daily limit: SELECT FOR UPDATE vs. UPDATE RETURNING in 🐘Aurora and 🚀YugabyteDB",
      "url": "https://dev.to/franckpachot/use-case-daily-limit-select-for-update-vs-update-returning-in-aurora-and-yugabytedb-142p",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "RETURNING for enforcing a per-customer daily payment limit on Aurora PostgreSQL and YugabyteDB, timing both approaches.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1205346",
      "database": "YugabyteDB",
      "date": "2022-09-28",
      "employment_period": "yugabyte-2021",
      "title": "Use case - daily limit: SELECT FOR UPDATE vs. UPDATE RETURNING in 🐘Aurora and 🚀YugabyteDB",
      "url": "https://dev.to/franckpachot/use-case-daily-limit-select-for-update-vs-update-returning-in-aurora-and-yugabytedb-142p",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "better",
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "But measuring that the speed of lock acquisition is similar, and even better, in a distributed architecture like YugabyteDB is a great result.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1207253",
      "database": "PostgreSQL",
      "date": "2022-09-30",
      "employment_period": "yugabyte-2021",
      "title": "Testing Patroni strict synchronous mode 👉🏻 you must handle invisible commit and read split brain",
      "url": "https://dev.to/yugabyte/testing-patroni-strict-synchronous-mode-you-must-handle-invisible-commit-and-read-split-brain-5bgk",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL streaming replication and Patroni DR automation are great features.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1207253",
      "database": "YugabyteDB",
      "date": "2022-09-30",
      "employment_period": "yugabyte-2021",
      "title": "Testing Patroni strict synchronous mode 👉🏻 you must handle invisible commit and read split brain",
      "url": "https://dev.to/yugabyte/testing-patroni-strict-synchronous-mode-you-must-handle-invisible-commit-and-read-split-brain-5bgk",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Tests Patroni's strict synchronous mode and finds invisible-commit and split-brain read risks, contrasting it with YugabyteDB replicating data and locks via Raft.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1208522",
      "database": "YugabyteDB",
      "date": "2022-10-01",
      "employment_period": "yugabyte-2021",
      "title": "Moving rows from one table to the other 🐘 🚀",
      "url": "https://dev.to/yugabyte/moving-rows-from-one-table-to-the-other-31mh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Moves rows between tables, schemas, or separate YugabyteDB clusters in one statement by combining a CTE with INSERT ...",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1204119",
      "database": "Oracle Database",
      "date": "2022-10-03",
      "employment_period": "yugabyte-2021",
      "title": "Real Application Testing on 🚀YugabyteDB 🐘pgreplay",
      "url": "https://dev.to/yugabyte/real-application-testing-on-yugabytedb-with-pgreplay-4ibm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Captures a PostgreSQL workload with csvlog and replays it against YugabyteDB using pgreplay, an open-source equivalent of Oracle's Real Application Testing.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1204119",
      "database": "PostgreSQL",
      "date": "2022-10-03",
      "employment_period": "yugabyte-2021",
      "title": "Real Application Testing on 🚀YugabyteDB 🐘pgreplay",
      "url": "https://dev.to/yugabyte/real-application-testing-on-yugabytedb-with-pgreplay-4ibm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Captures a PostgreSQL workload with csvlog and replays it against YugabyteDB using pgreplay, an open-source equivalent of Oracle's Real Application Testing.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1204119",
      "database": "YugabyteDB",
      "date": "2022-10-03",
      "employment_period": "yugabyte-2021",
      "title": "Real Application Testing on 🚀YugabyteDB 🐘pgreplay",
      "url": "https://dev.to/yugabyte/real-application-testing-on-yugabytedb-with-pgreplay-4ibm",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "good",
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I define the log destination as `csvlog`, and set the log parameters as recommended by the documentation: ```sh docker run -v /var/tmp/yb:/var/tmp \\ -d --rm --name yb yugabytedb/yugabyte:2.15.2.0-b87 \\ bash -c ' cat > tserver.flagfile <<CAT --ysql_pg_conf_csv=\\ log_destination=csvlog,\\ log_statement=all,\\ log_min_messages=error,\\ log_min_error_statement=log,\\ log_connections=on,\\ log_disconnections=on CAT yugabyted s",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1210950",
      "database": "PostgreSQL",
      "date": "2022-10-04",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan: Get the right plan without surprises",
      "url": "https://dev.to/yugabyte/pghintplan-get-the-right-plan-without-surprises-42h6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "If you work with PostgreSQL or any PostgreSQL-compatible database, you can install `pg_hint_plan` to understand better the query planner choices.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1202889",
      "database": "MySQL",
      "date": "2022-10-10",
      "employment_period": "yugabyte-2021",
      "title": "SingleStore - is there a workaround for unsupported Foreign Key?",
      "url": "https://dev.to/yugabyte/singlestore-is-there-a-workaround-for-unsupported-foreign-key-1pp0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "The most scalable is to lock the parent row in share mode, but this is not supported in SingleStore: ```sql singlestore> start transaction; Query OK, 0 rows affected (0.03 sec) singlestore> select * from dept where deptno=40 for share; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'share' at line 1 singlestore>",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1202889",
      "database": "PostgreSQL",
      "date": "2022-10-10",
      "employment_period": "yugabyte-2021",
      "title": "SingleStore - is there a workaround for unsupported Foreign Key?",
      "url": "https://dev.to/yugabyte/singlestore-is-there-a-workaround-for-unsupported-foreign-key-1pp0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The PostgreSQL ones are more SQL compatible, and probably a better choice for OLTP.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1218610",
      "database": "PostgreSQL",
      "date": "2022-10-13",
      "employment_period": "yugabyte-2021",
      "title": "Is CosmosDB a new SQL database? Is CitusDB a distributed SQL database? Has Hyperscale vanished in the Hyperspace?",
      "url": "https://dev.to/yugabyte/is-cosmosdb-a-new-sql-database-is-citusdb-a-distributed-sql-did-hyperscale-vanished-in-the-hyperspace-472d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "There's a free trial, with no credit card required 😀 and a 7 days limit ☹️ In the \"Recommended APIs\", NoSQL is recommended, but PostgreSQL is there: !Recommended API I didn't find immediately how to connect.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1218610",
      "database": "YugabyteDB",
      "date": "2022-10-13",
      "employment_period": "yugabyte-2021",
      "title": "Is CosmosDB a new SQL database? Is CitusDB a distributed SQL database? Has Hyperscale vanished in the Hyperspace?",
      "url": "https://dev.to/yugabyte/is-cosmosdb-a-new-sql-database-is-citusdb-a-distributed-sql-did-hyperscale-vanished-in-the-hyperspace-472d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed SQL like **YugabyteDB**, on the opposite, provide all SQL features on top of a distributed and replicated storage, which is seen as one global database with global ACID transactions.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1224043",
      "database": "YugabyteDB",
      "date": "2022-10-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Skip Scan aka Loose Index Scan on compound index",
      "url": "https://dev.to/yugabyte/yugabytedb-skip-scan-aka-loose-index-scan-on-compound-index-4dce",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Skip Scan aka Loose Index Scan on compound index.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1221461",
      "database": "Oracle Database",
      "date": "2022-10-21",
      "employment_period": "yugabyte-2021",
      "title": "Dirty Reads in Oracle Database (is Oracle ACID across failure?)",
      "url": "https://dev.to/yugabyte/dirty-reads-in-oracle-database-is-oracle-acid-across-failure-43o2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Dirty Reads in Oracle Database (is Oracle ACID across failure?).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1236964",
      "database": "PostgreSQL",
      "date": "2022-10-31",
      "employment_period": "yugabyte-2021",
      "title": "How to set Read Committed in YugabyteDB",
      "url": "https://dev.to/yugabyte/how-to-set-read-committed-in-yugabytedb-2m6c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is [PostgreSQL compatible] ( which means that it supports all transaction isolation level, with the same behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1236964",
      "database": "YugabyteDB",
      "date": "2022-10-31",
      "employment_period": "yugabyte-2021",
      "title": "How to set Read Committed in YugabyteDB",
      "url": "https://dev.to/yugabyte/how-to-set-read-committed-in-yugabytedb-2m6c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How to set Read Committed in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1084515",
      "database": "YugabyteDB",
      "date": "2022-11-01",
      "employment_period": "yugabyte-2021",
      "title": "🚀 Autonomous Sharding in YugabyteDB (with automatic tablet splitting)",
      "url": "https://dev.to/yugabyte/autonomous-sharding-in-yugabytedb-with-automatic-tablet-splitting-5ajh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "🚀 Autonomous Sharding in YugabyteDB (with automatic tablet splitting).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1237274",
      "database": "PostgreSQL",
      "date": "2022-11-01",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB cloud/region/zone",
      "url": "https://dev.to/franckpachot/yugabytedb-cloudregionzone-4pic",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "- To be resilient to cloud provider, region or zone failure, the tablet peers are spread across them - To fulfill performance expectations or data governance rules, the tablets can be constrained to a specific subset of the cluster (with tablespaces) When connected to YSQL, the PostgreSQL endpoint, you can list all nodes with `yb_servers()` which displays their **cloud**, **region** and **zone**.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1237274",
      "database": "YugabyteDB",
      "date": "2022-11-01",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB cloud/region/zone",
      "url": "https://dev.to/franckpachot/yugabytedb-cloudregionzone-4pic",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB cloud/region/zone.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1241571",
      "database": "PostgreSQL",
      "date": "2022-11-04",
      "employment_period": "yugabyte-2021",
      "title": "Mastodon on YugabyteDB",
      "url": "https://dev.to/yugabyte/mastodon-on-yugabytedb-10o2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs Mastodon, which needed a database upgrade from 8 to 36 cores under load, on YugabyteDB instead of PostgreSQL, publishing a ready-to-run GitPod test environment.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1241571",
      "database": "YugabyteDB",
      "date": "2022-11-04",
      "employment_period": "yugabyte-2021",
      "title": "Mastodon on YugabyteDB",
      "url": "https://dev.to/yugabyte/mastodon-on-yugabytedb-10o2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Mastodon on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1246621",
      "database": "PostgreSQL",
      "date": "2022-11-07",
      "employment_period": "yugabyte-2021",
      "title": "Gitpod with YugabyteDB image",
      "url": "https://dev.to/yugabyte/gitpod-with-yugabytedb-image-3apo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "### YugabyteDB If your project uses PostgreSQL, you can test it on YugabyteDB (Open Source PostgreSQL-compatible Distributed SQL database) with the dedicated YugabyteDB image.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1246621",
      "database": "YugabyteDB",
      "date": "2022-11-07",
      "employment_period": "yugabyte-2021",
      "title": "Gitpod with YugabyteDB image",
      "url": "https://dev.to/yugabyte/gitpod-with-yugabytedb-image-3apo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You can test it: ![Open in Gitpod]( !Image description ## Multi-node If you want to play with a multi-node, as you need multiple network interfaces, it is better not to use this image but start YugabyteDB nodes in docker, as I do in my ybdemo: ![Open in Gitpod]( !Image description",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1240089",
      "database": "Oracle Database",
      "date": "2022-11-08",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE: testing batch size for bulk load",
      "url": "https://dev.to/yugabyte/yugabytedb-on-oke-testing-batch-size-for-bulk-load-1dc3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Benchmarks insert batch sizes for bulk loading YugabyteDB on a 3-worker Oracle Kubernetes Engine cluster running 12 yb-tserver pods capped at 4 vCPU and 32GB RAM.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1240089",
      "database": "YugabyteDB",
      "date": "2022-11-08",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB on OKE: testing batch size for bulk load",
      "url": "https://dev.to/yugabyte/yugabytedb-on-oke-testing-batch-size-for-bulk-load-1dc3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB on OKE: testing batch size for bulk load.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1247576",
      "database": "CockroachDB",
      "date": "2022-11-08",
      "employment_period": "yugabyte-2021",
      "title": "LSM Tree, Tombstones and YugabyteDB (No Vacuum)",
      "url": "https://dev.to/yugabyte/lsm-tree-tombstones-and-yugabytedb-31cc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs a heavy insert-then-delete workload against YugabyteDB to verify its LSM tree avoids the degradation seen as PostgreSQL bloat or CockroachDB tombstone buildup.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1247576",
      "database": "PostgreSQL",
      "date": "2022-11-08",
      "employment_period": "yugabyte-2021",
      "title": "LSM Tree, Tombstones and YugabyteDB (No Vacuum)",
      "url": "https://dev.to/yugabyte/lsm-tree-tombstones-and-yugabytedb-31cc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs a heavy insert-then-delete workload against YugabyteDB to verify its LSM tree avoids the degradation seen as PostgreSQL bloat or CockroachDB tombstone buildup.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1247576",
      "database": "YugabyteDB",
      "date": "2022-11-08",
      "employment_period": "yugabyte-2021",
      "title": "LSM Tree, Tombstones and YugabyteDB (No Vacuum)",
      "url": "https://dev.to/yugabyte/lsm-tree-tombstones-and-yugabytedb-31cc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "This blog post was there to show that nothing is bad with tombstones in YugabyteDB, even on a table with heavy deletes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1248283",
      "database": "MySQL",
      "date": "2022-11-09",
      "employment_period": "yugabyte-2021",
      "title": "MariaDB Xpand Distributed MySQL - Foreign key but no Serializable",
      "url": "https://dev.to/yugabyte/mariadb-xpand-distributed-mysql-39fn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here is my first test with MariaDB Xpand which is better about referential integrity.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1253100",
      "database": "Amazon DynamoDB",
      "date": "2022-11-12",
      "employment_period": "yugabyte-2021",
      "title": "How far is my AWS region?",
      "url": "https://dev.to/aws-heroes/how-far-is-my-aws-region-5751",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Tracing the route though internet Let's traceroute to understand it better: ``` Franck:~ $ tracert dynamodb.eu-central-2.amazonaws.com 1 1 ms 1 ms 1 ms INTEL_CE_LINUX [172.22.22.1] 2 12 ms 19 ms 9 ms 193-164-24-1.sefanet.net [193.164.24.1] 3 13 ms 10 ms 12 ms v125-4500x.sefanet.ch [217.119.144.212] 4 18 ms 17 ms 16 ms e9-c1.sefanet.ch [217.119.144.194] 5 9 ms 12 ms 10 ms e8-b2.sefanet.ch [217.119.144.226] 6 12 ms ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1253100",
      "database": "Oracle Database",
      "date": "2022-11-12",
      "employment_period": "yugabyte-2021",
      "title": "How far is my AWS region?",
      "url": "https://dev.to/aws-heroes/how-far-is-my-aws-region-5751",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Hybrid Cloud I've run the same from an OCI (The Oracle Cloud) machine in Zurich: !FRA Even from another cloud also in Zurich (and it could even happen that they share the same data centers, I know that Oracle Cloud is hosted in Equinix, but AWS do not disclose it) it is faster to connect to another region.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1257413",
      "database": "YugabyteDB",
      "date": "2022-11-15",
      "employment_period": "yugabyte-2021",
      "title": "Flashback query in YugabyteDB",
      "url": "https://dev.to/yugabyte/flashback-query-in-yugabytedb-k7o",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "But **YugabyteDB** can do better thanks to a feature initially implemented to avoid the latency for read-only operations in geo-distributed deployement: **Follower Reads**.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1256341",
      "database": "YugabyteDB",
      "date": "2022-11-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB auto-sharding (showing tablet size with Grafana)",
      "url": "https://dev.to/yugabyte/yugabytedb-auto-sharding-2ahc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB auto-sharding (showing tablet size with Grafana).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1262562",
      "database": "YugabyteDB",
      "date": "2022-11-20",
      "employment_period": "yugabyte-2021",
      "title": "Cross-cluster async replication with YugabyteDB xCluster",
      "url": "https://dev.to/yugabyte/cross-cluster-async-replication-with-yugabytedb-xcluster-34mg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Cross-cluster async replication with YugabyteDB xCluster.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1267797",
      "database": "PostgreSQL",
      "date": "2022-11-22",
      "employment_period": "yugabyte-2021",
      "title": "DuckDB on YugabyteDB",
      "url": "https://dev.to/yugabyte/duckdb-on-yugabytedb-31l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is an open-source distributed SQL database optimized for OLTP and is PostgreSQL-compatible.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1267797",
      "database": "YugabyteDB",
      "date": "2022-11-22",
      "employment_period": "yugabyte-2021",
      "title": "DuckDB on YugabyteDB",
      "url": "https://dev.to/yugabyte/duckdb-on-yugabytedb-31l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DuckDB on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1270951",
      "database": "PostgreSQL",
      "date": "2022-11-25",
      "employment_period": "yugabyte-2021",
      "title": "Patroni and Availability Zone failure",
      "url": "https://dev.to/yugabyte/patroni-and-availability-zone-failure-oei",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Even if many things have been automated, thanks to PostgreSQL synchronous replication, and Patroni orchestration, a primary/standby is still a DR (Disaster Recovery) solution and not a full HA (High Availability) one which is transparently resilient to failures.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1275672",
      "database": "Oracle Database",
      "date": "2022-11-30",
      "employment_period": "yugabyte-2021",
      "title": "The best indexes for an execution plan that never gets (too) wrong",
      "url": "https://dev.to/yugabyte/the-best-indexes-for-an-execution-plan-that-never-gets-too-wrong-3hgd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is what many applications are doing when they want predictable execution plans: force the indexes with hints, with a rule-based optimizer, or by forcing a very low cost for index access (you can look at the SAP recommended configuration for Oracle, disabling all optimizer features that came after the rule based optimizer).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1275672",
      "database": "PostgreSQL",
      "date": "2022-11-30",
      "employment_period": "yugabyte-2021",
      "title": "The best indexes for an execution plan that never gets (too) wrong",
      "url": "https://dev.to/yugabyte/the-best-indexes-for-an-execution-plan-that-never-gets-too-wrong-3hgd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Two tables I create the following tables, with one million rows, on YugabyteDB (PostgreSQL compatible): ```sql create table a ( id int, filter int ); create table b ( id int, filter int ); insert into a select n, sign(mod(n,1e5)) from generate_series(1,1e6) n; insert into b select n, sign(mod(n,1e5)) from generate_series(1,1e6) n; ``` My goal is to filter on each table using the `filter` column, and then join on `",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1275672",
      "database": "YugabyteDB",
      "date": "2022-11-30",
      "employment_period": "yugabyte-2021",
      "title": "The best indexes for an execution plan that never gets (too) wrong",
      "url": "https://dev.to/yugabyte/the-best-indexes-for-an-execution-plan-that-never-gets-too-wrong-3hgd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Two tables I create the following tables, with one million rows, on YugabyteDB (PostgreSQL compatible): ```sql create table a ( id int, filter int ); create table b ( id int, filter int ); insert into a select n, sign(mod(n,1e5)) from generate_series(1,1e6) n; insert into b select n, sign(mod(n,1e5)) from generate_series(1,1e6) n; ``` My goal is to filter on each table using the `filter` column, and then join on `",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1281562",
      "database": "PostgreSQL",
      "date": "2022-12-02",
      "employment_period": "yugabyte-2021",
      "title": "Scalable Job Queue in SQL (YugabyteDB)",
      "url": "https://dev.to/yugabyte/scalable-job-queue-in-sql-yugabytedb-4ma5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example on YugabyteDB (Open Source, PostgreSQL-compatible).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1281562",
      "database": "YugabyteDB",
      "date": "2022-12-02",
      "employment_period": "yugabyte-2021",
      "title": "Scalable Job Queue in SQL (YugabyteDB)",
      "url": "https://dev.to/yugabyte/scalable-job-queue-in-sql-yugabytedb-4ma5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Scalable Job Queue in SQL (YugabyteDB).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1284373",
      "database": "PostgreSQL",
      "date": "2022-12-05",
      "employment_period": "yugabyte-2021",
      "title": "Index usage monitoring in YugabyteDB & PostgreSQL",
      "url": "https://dev.to/yugabyte/index-usage-monitoring-in-yugabytedb-postgresql-1d5h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index usage monitoring in YugabyteDB & PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1284373",
      "database": "YugabyteDB",
      "date": "2022-12-05",
      "employment_period": "yugabyte-2021",
      "title": "Index usage monitoring in YugabyteDB & PostgreSQL",
      "url": "https://dev.to/yugabyte/index-usage-monitoring-in-yugabytedb-postgresql-1d5h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index usage monitoring in YugabyteDB & PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1289604",
      "database": "CockroachDB",
      "date": "2022-12-08",
      "employment_period": "yugabyte-2021",
      "title": "What is a \"truly distributed UDF\" ?",
      "url": "https://dev.to/yugabyte/what-is-a-truly-distributed-udf--2ikc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Responds to a CockroachDB blog claim about distributed UDFs by arguing YugabyteDB already runs PostgreSQL user-defined functions distributed through DocDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1289604",
      "database": "PostgreSQL",
      "date": "2022-12-08",
      "employment_period": "yugabyte-2021",
      "title": "What is a \"truly distributed UDF\" ?",
      "url": "https://dev.to/yugabyte/what-is-a-truly-distributed-udf--2ikc",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is a great feature we have thanks to re-using the PostgreSQL code.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1289604",
      "database": "YugabyteDB",
      "date": "2022-12-08",
      "employment_period": "yugabyte-2021",
      "title": "What is a \"truly distributed UDF\" ?",
      "url": "https://dev.to/yugabyte/what-is-a-truly-distributed-udf--2ikc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Responds to a CockroachDB blog claim about distributed UDFs by arguing YugabyteDB already runs PostgreSQL user-defined functions distributed through DocDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1293195",
      "database": "PostgreSQL",
      "date": "2022-12-12",
      "employment_period": "yugabyte-2021",
      "title": "EXPLAIN (ANALYZE, DIST) 🚀 YugabyteDB distributed execution plan",
      "url": "https://dev.to/franckpachot/explain-analyze-dist-4nlc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "--- This is a good example of how YugabyteDB re-uses PostgreSQL: the API is the same, the PostgreSQL features are available, but data reads and writes are distributed and replicated.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1293195",
      "database": "YugabyteDB",
      "date": "2022-12-12",
      "employment_period": "yugabyte-2021",
      "title": "EXPLAIN (ANALYZE, DIST) 🚀 YugabyteDB distributed execution plan",
      "url": "https://dev.to/franckpachot/explain-analyze-dist-4nlc",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "--- This is a good example of how YugabyteDB re-uses PostgreSQL: the API is the same, the PostgreSQL features are available, but data reads and writes are distributed and replicated.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1294832",
      "database": "Amazon Aurora",
      "date": "2022-12-13",
      "employment_period": "yugabyte-2021",
      "title": "SQL Macros (aka Parameterized Views) in YugabyteDB with PostgreSQL UDF",
      "url": "https://dev.to/yugabyte/sql-macros-in-yugabytedb-jo1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example creating a table with a 8x8 points and looking at Manhattan distance and min/max Euclidian distance between those points ```sql CREATE TABLE demo as select a,b from generate_series(1,8) a, generate_series(1,8) b; select manhattan_dist(x.a, x.b, y.a, y.b) ,min(euclidean_dist(x.a, x.b, y.a, y.b)) ,max(euclidean_dist(x.a, x.b, y.a, y.b)) from demo x , demo y group by manhattan_dist(x.a, x.b, y.a, y.b)",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1294832",
      "database": "Oracle Database",
      "date": "2022-12-13",
      "employment_period": "yugabyte-2021",
      "title": "SQL Macros (aka Parameterized Views) in YugabyteDB with PostgreSQL UDF",
      "url": "https://dev.to/yugabyte/sql-macros-in-yugabytedb-jo1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Draws a parallel between PostgreSQL UDFs in YugabyteDB and Oracle's move from Pragma UDF in 12c to inlined SQL Macros in 19c to cut PL/SQL context switches.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1294832",
      "database": "PostgreSQL",
      "date": "2022-12-13",
      "employment_period": "yugabyte-2021",
      "title": "SQL Macros (aka Parameterized Views) in YugabyteDB with PostgreSQL UDF",
      "url": "https://dev.to/yugabyte/sql-macros-in-yugabytedb-jo1",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL has a great support for UDFs, both in functionalities and performance and this is available in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1294832",
      "database": "YugabyteDB",
      "date": "2022-12-13",
      "employment_period": "yugabyte-2021",
      "title": "SQL Macros (aka Parameterized Views) in YugabyteDB with PostgreSQL UDF",
      "url": "https://dev.to/yugabyte/sql-macros-in-yugabytedb-jo1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL Macros (aka Parameterized Views) in YugabyteDB with PostgreSQL UDF.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1295980",
      "database": "PostgreSQL",
      "date": "2022-12-14",
      "employment_period": "yugabyte-2021",
      "title": "INSERT ON CONFLICT returning old values",
      "url": "https://dev.to/yugabyte/insert-on-conflict-returning-old-values-5025",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "ON CONFLICT DO NOTHING in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1295980",
      "database": "YugabyteDB",
      "date": "2022-12-14",
      "employment_period": "yugabyte-2021",
      "title": "INSERT ON CONFLICT returning old values",
      "url": "https://dev.to/yugabyte/insert-on-conflict-returning-old-values-5025",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "In YugabyteDB this is lighter, but still is more expensive that just reading the old values.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1296333",
      "database": "YugabyteDB",
      "date": "2022-12-14",
      "employment_period": "yugabyte-2021",
      "title": "A very short demo to show YugabyteDB follower reads",
      "url": "https://dev.to/yugabyte/a-very-short-demo-to-show-yugabytedb-follower-reads-2dp8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A very short demo to show YugabyteDB follower reads.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1299016",
      "database": "CockroachDB",
      "date": "2022-12-16",
      "employment_period": "yugabyte-2021",
      "title": "Moving data from CockroachDB🪳 to PostgreSQL🐘 or YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/moving-data-from-cockroachdb-to-postgresql-or-yugabytedb-462h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Moving data from CockroachDB🪳 to PostgreSQL🐘 or YugabyteDB🚀.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1299016",
      "database": "PostgreSQL",
      "date": "2022-12-16",
      "employment_period": "yugabyte-2021",
      "title": "Moving data from CockroachDB🪳 to PostgreSQL🐘 or YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/moving-data-from-cockroachdb-to-postgresql-or-yugabytedb-462h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "possesses stated advantages",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "However because PostgreSQL is powerful and YugabyteDB benefits from all those SQL features, there is an easy solution with Foreign Data Wrapper.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1299016",
      "database": "YugabyteDB",
      "date": "2022-12-16",
      "employment_period": "yugabyte-2021",
      "title": "Moving data from CockroachDB🪳 to PostgreSQL🐘 or YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/moving-data-from-cockroachdb-to-postgresql-or-yugabytedb-462h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I tried this in `psql`: ```sql psql <<'SQL' CREATE EXTENSION postgres_fdw; CREATE SERVER cr FOREIGN DATA WRAPPER postgres_fdw OPTIONS ( host 'cr', port '26257', dbname 'tpcc' ); CREATE USER MAPPING FOR yugabyte SERVER cr OPTIONS ( user 'root', password '' ); IMPORT FOREIGN SCHEMA public FROM SERVER cr INTO public; \\det SQL ``` and this was looking good...",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1301007",
      "database": "Oracle Database",
      "date": "2022-12-19",
      "employment_period": "yugabyte-2021",
      "title": "IvorySQL - I've tested some Oracle-PostgreSQL compatibility of version 2.1",
      "url": "https://dev.to/yugabyte/ivorysql-ive-tested-some-oracle-postgresql-compatibility-of-version-21-14de",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [
        "advantage",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here is a demo of the two possibilities: ```sql ivorysql=# create sequence my_sequence; CREATE SEQUENCE ivorysql=# select nextval('my_sequence'); nextval --------- 1 ivorysql=# select my_sequence.nextval; nextval --------- 2 ``` Accepting the Oracle syntax has another advantage.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1301007",
      "database": "PostgreSQL",
      "date": "2022-12-19",
      "employment_period": "yugabyte-2021",
      "title": "IvorySQL - I've tested some Oracle-PostgreSQL compatibility of version 2.1",
      "url": "https://dev.to/yugabyte/ivorysql-ive-tested-some-oracle-postgresql-compatibility-of-version-21-14de",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "However, when using PostgreSQL declarative partitioning on top of it, there is the same limitation for unique constraints.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1301007",
      "database": "YugabyteDB",
      "date": "2022-12-19",
      "employment_period": "yugabyte-2021",
      "title": "IvorySQL - I've tested some Oracle-PostgreSQL compatibility of version 2.1",
      "url": "https://dev.to/yugabyte/ivorysql-ive-tested-some-oracle-postgresql-compatibility-of-version-21-14de",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "And with Distributed SQL databases, Maximum Availability can be provided (here is a comparison or **Oracle MAA** with **YugabyteDB** native HA).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1297878",
      "database": "YugabyteDB",
      "date": "2022-12-20",
      "employment_period": "yugabyte-2021",
      "title": "A very short demo on updates in YugabyteDB",
      "url": "https://dev.to/yugabyte/a-very-short-demo-on-updates-in-yugabytedb-8ik",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "faster side of comparison"
      ],
      "critical_signals": [],
      "evidence_excerpt": "A very short demo on updates in YugabyteDB.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1304190",
      "database": "Db2",
      "date": "2022-12-21",
      "employment_period": "yugabyte-2021",
      "title": "Adding a PostgreSQL extension to YugabyteDB - example with timestamp9",
      "url": "https://dev.to/yugabyte/adding-a-postgresql-extension-to-yugabytedb-example-with-timestamp9-55ah",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is probably only for compatibility with other databases, like Oracle or Db2, because you can also store your nanoseconds as `bigint` and use the `timestamp9` extension only to cast and use the functions provided with it.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1304190",
      "database": "Oracle Database",
      "date": "2022-12-21",
      "employment_period": "yugabyte-2021",
      "title": "Adding a PostgreSQL extension to YugabyteDB - example with timestamp9",
      "url": "https://dev.to/yugabyte/adding-a-postgresql-extension-to-yugabytedb-example-with-timestamp9-55ah",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is probably only for compatibility with other databases, like Oracle or Db2, because you can also store your nanoseconds as `bigint` and use the `timestamp9` extension only to cast and use the functions provided with it.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1304190",
      "database": "PostgreSQL",
      "date": "2022-12-21",
      "employment_period": "yugabyte-2021",
      "title": "Adding a PostgreSQL extension to YugabyteDB - example with timestamp9",
      "url": "https://dev.to/yugabyte/adding-a-postgresql-extension-to-yugabytedb-example-with-timestamp9-55ah",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Adding a PostgreSQL extension to YugabyteDB - example with timestamp9.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1304190",
      "database": "YugabyteDB",
      "date": "2022-12-21",
      "employment_period": "yugabyte-2021",
      "title": "Adding a PostgreSQL extension to YugabyteDB - example with timestamp9",
      "url": "https://dev.to/yugabyte/adding-a-postgresql-extension-to-yugabytedb-example-with-timestamp9-55ah",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Adding a PostgreSQL extension to YugabyteDB - example with timestamp9.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1305316",
      "database": "PostgreSQL",
      "date": "2022-12-22",
      "employment_period": "yugabyte-2021",
      "title": "Install extensions from PGDG repo to YugabyteDB - example with sequential_uuids",
      "url": "https://dev.to/yugabyte/install-extensions-from-pgdg-repo-to-yugabytedb-example-with-sequentialuuids-1dio",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "regression"
      ],
      "evidence_excerpt": "The full PostgreSQL-compatibility of the extension is confirmed by the regression tests.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1305316",
      "database": "YugabyteDB",
      "date": "2022-12-22",
      "employment_period": "yugabyte-2021",
      "title": "Install extensions from PGDG repo to YugabyteDB - example with sequential_uuids",
      "url": "https://dev.to/yugabyte/install-extensions-from-pgdg-repo-to-yugabytedb-example-with-sequentialuuids-1dio",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Install extensions from PGDG repo to YugabyteDB - example with sequential_uuids.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1316587",
      "database": "Cassandra",
      "date": "2023-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Data Rollup in YugabyteDB🚀 and PostgreSQL🐘",
      "url": "https://dev.to/yugabyte/data-rollup-in-yugabytedb-and-postgresql-5fkd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows a YSQL rollup pattern keeping one week of raw sensor readings and aggregating older rows into daily summaries, unlike YCQL's Cassandra-style TTL expiry.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1316587",
      "database": "PostgreSQL",
      "date": "2023-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Data Rollup in YugabyteDB🚀 and PostgreSQL🐘",
      "url": "https://dev.to/yugabyte/data-rollup-in-yugabytedb-and-postgresql-5fkd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Data Rollup in YugabyteDB🚀 and PostgreSQL🐘.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1316587",
      "database": "YugabyteDB",
      "date": "2023-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Data Rollup in YugabyteDB🚀 and PostgreSQL🐘",
      "url": "https://dev.to/yugabyte/data-rollup-in-yugabytedb-and-postgresql-5fkd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB adds scalability (great for timeseries with high throughput data ingest) and resilience (the database is online even during upgrades or failures).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1305851",
      "database": "Oracle Database",
      "date": "2023-01-04",
      "employment_period": "yugabyte-2021",
      "title": "Migrating from Oracle Autonomous Database to YugabyteDB with YB-Voyager",
      "url": "https://dev.to/yugabyte/migrating-from-oracle-autonomous-database-to-yugabytedb-with-yb-voyager-3o7d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Migrating from Oracle Autonomous Database to YugabyteDB with YB-Voyager.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1305851",
      "database": "PostgreSQL",
      "date": "2023-01-04",
      "employment_period": "yugabyte-2021",
      "title": "Migrating from Oracle Autonomous Database to YugabyteDB with YB-Voyager",
      "url": "https://dev.to/yugabyte/migrating-from-oracle-autonomous-database-to-yugabytedb-with-yb-voyager-3o7d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Migrating to YugabyteDB is easy: because it is PostgreSQL-compatible, many tools already exists.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1305851",
      "database": "YugabyteDB",
      "date": "2023-01-04",
      "employment_period": "yugabyte-2021",
      "title": "Migrating from Oracle Autonomous Database to YugabyteDB with YB-Voyager",
      "url": "https://dev.to/yugabyte/migrating-from-oracle-autonomous-database-to-yugabytedb-with-yb-voyager-3o7d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I've modified all NUMBER id's with the following regexp: ```sh sed -E 's/_id (integer|numeric) /_id bigint /' -i /home/yugabyte/schema/tables/table.sql ``` Even if there are tools to ease the migration, it is always a good idea check the schema.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1319616",
      "database": "PostgreSQL",
      "date": "2023-01-06",
      "employment_period": "yugabyte-2021",
      "title": "Parallel export to CSV in YugabyteDB thanks to yb_hash_code() and PostgreSQL-compatibility",
      "url": "https://dev.to/yugabyte/parallel-export-to-csv-in-yugabytedb-43f9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Parallel export to CSV in YugabyteDB thanks to yb_hash_code() and PostgreSQL-compatibility.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1319616",
      "database": "YugabyteDB",
      "date": "2023-01-06",
      "employment_period": "yugabyte-2021",
      "title": "Parallel export to CSV in YugabyteDB thanks to yb_hash_code() and PostgreSQL-compatibility",
      "url": "https://dev.to/yugabyte/parallel-export-to-csv-in-yugabytedb-43f9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Parallel export to CSV in YugabyteDB thanks to yb_hash_code() and PostgreSQL-compatibility.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1318304",
      "database": "PostgreSQL",
      "date": "2023-01-07",
      "employment_period": "yugabyte-2021",
      "title": "🚀Batched Nested Loop to reduce read requests to the distributed storage",
      "url": "https://dev.to/yugabyte/batched-nested-loop-to-reduce-read-requests-to-the-distributed-storage-j5i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "That illustrates how YugabyteDB re-uses PostgreSQL: get all features from it rather than developing a new database from scratch, but optimize what must be done differently to provide high performance when (geo-)distributed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1318304",
      "database": "YugabyteDB",
      "date": "2023-01-07",
      "employment_period": "yugabyte-2021",
      "title": "🚀Batched Nested Loop to reduce read requests to the distributed storage",
      "url": "https://dev.to/yugabyte/batched-nested-loop-to-reduce-read-requests-to-the-distributed-storage-j5i",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient",
        "overcomes stated disadvantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The YugabyteDB storage layer is very efficient at reading many points or ranges in one call.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1320081",
      "database": "Oracle Database",
      "date": "2023-01-07",
      "employment_period": "yugabyte-2021",
      "title": "Scalable Sequence for PostgreSQL",
      "url": "https://dev.to/aws-heroes/scalable-sequence-for-postgresql-34o7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Note that this is different from Oracle Database Scalable Sequences which are more like a Partitioned Sequence for which the goal is to avoid B-Tree hotspots.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1320081",
      "database": "PostgreSQL",
      "date": "2023-01-07",
      "employment_period": "yugabyte-2021",
      "title": "Scalable Sequence for PostgreSQL",
      "url": "https://dev.to/aws-heroes/scalable-sequence-for-postgresql-34o7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better",
        "scalable"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "Scalable Sequence for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1320081",
      "database": "YugabyteDB",
      "date": "2023-01-07",
      "employment_period": "yugabyte-2021",
      "title": "Scalable Sequence for PostgreSQL",
      "url": "https://dev.to/aws-heroes/scalable-sequence-for-postgresql-34o7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Testing scalable sequence Now I'll call the function with my special pattern `nextval('seq%8')`: ```sql yugabyte=# select nextval('seq%8'); nextval --------- 2 (1 row) yugabyte=# \\connect psql (13.7, server 11.2-YB-2.17.0.0-b0) You are now connected to database \"yugabyte\" as user \"yugabyte\".",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1321826",
      "database": "Amazon DynamoDB",
      "date": "2023-01-10",
      "employment_period": "yugabyte-2021",
      "title": "SQL doesn't need the \"Single Table Design\" but Composite Primary Keys",
      "url": "https://dev.to/aws-heroes/sql-doesnt-need-the-single-table-design-but-composite-primary-keys-5048",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Contrasts DynamoDB's single-table design, nesting subdocuments in one JSON attribute, with a relational alternative using composite primary keys for the same relationship.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1326734",
      "database": "PostgreSQL",
      "date": "2023-01-12",
      "employment_period": "yugabyte-2021",
      "title": "When are PostgreSQL prepared statements fully prepared for execution?",
      "url": "https://dev.to/aws-heroes/are-postgresql-prepared-statements-really-prepared-4cm2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "When are PostgreSQL prepared statements fully prepared for execution?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332444",
      "database": "PostgreSQL",
      "date": "2023-01-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Helm Chart services: LoadBalancer and headless ClusterIP ☸️🚀",
      "url": "https://dev.to/aws-heroes/yugabytedb-helm-chart-services-loadbalancer-and-headless-clusterip-4d5m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Endpoints The ClusterIP headless service `yb-tservers` connects to the `yb-tserver` pods, 192.168.11.13 and 192.168.20.199 in my case, for all ports exposed by the Table Servers, 5433 being the YSQL one, which is the **PostgreSQL-compatible** API.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332444",
      "database": "YugabyteDB",
      "date": "2023-01-17",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Helm Chart services: LoadBalancer and headless ClusterIP ☸️🚀",
      "url": "https://dev.to/aws-heroes/yugabytedb-helm-chart-services-loadbalancer-and-headless-clusterip-4d5m",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "If you don't want the LoadBalancer, you can disable it with ` enableLoadbalancer: false` Those values are visible with: ```sh helm show all yugabytedb/yugabyte ``` !Image description and if you don't ind the documentation and comments sufficient, the template is: yugabyte/charts service.yaml Note that Helm Charts are the maintained and recommended way to Install YugabyteDB on Kubernetes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332879",
      "database": "Amazon Aurora",
      "date": "2023-01-18",
      "employment_period": "yugabyte-2021",
      "title": "generate_series() in Oracle like in PostgreSQL",
      "url": "https://dev.to/aws-heroes/generateseries-in-oracle-like-in-postgresql-6n7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "When I want to quickly generate rows in PostgreSQL or PostgreSQL-compatible like Amazon Aurora or YugabyteDB, I use `generate_series()` like: ```sql create table demo ( id bigint primary key, value int default 0 ); insert into demo ( id ) select id from generate_series(1,1000) id; ``` How to do the same on Oracle?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332879",
      "database": "Oracle Database",
      "date": "2023-01-18",
      "employment_period": "yugabyte-2021",
      "title": "generate_series() in Oracle like in PostgreSQL",
      "url": "https://dev.to/aws-heroes/generateseries-in-oracle-like-in-postgresql-6n7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "generate_series() in Oracle like in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332879",
      "database": "PostgreSQL",
      "date": "2023-01-18",
      "employment_period": "yugabyte-2021",
      "title": "generate_series() in Oracle like in PostgreSQL",
      "url": "https://dev.to/aws-heroes/generateseries-in-oracle-like-in-postgresql-6n7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better",
        "faster"
      ],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "When you move to PostgreSQL, `generate_series(start,stop)` comes as a much better solution.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332879",
      "database": "YugabyteDB",
      "date": "2023-01-18",
      "employment_period": "yugabyte-2021",
      "title": "generate_series() in Oracle like in PostgreSQL",
      "url": "https://dev.to/aws-heroes/generateseries-in-oracle-like-in-postgresql-6n7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "When I want to quickly generate rows in PostgreSQL or PostgreSQL-compatible like Amazon Aurora or YugabyteDB, I use `generate_series()` like: ```sql create table demo ( id bigint primary key, value int default 0 ); insert into demo ( id ) select id from generate_series(1,1000) id; ``` How to do the same on Oracle?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332990",
      "database": "Cassandra",
      "date": "2023-01-19",
      "employment_period": "yugabyte-2021",
      "title": "FerretDB + YugabyteDB on Kubernetes (Amazon EKS): a MongoDB API to Distributed SQL, at scale",
      "url": "https://dev.to/aws-heroes/ferretdb-yugabytedb-on-kubernetes-amazon-eks-a-mongodb-api-to-distributed-sql-at-scale-1o2c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB has a Cassandra-compatible API (called YCQL) and a PostgreSQL-compatible one (called YSQL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332990",
      "database": "MongoDB",
      "date": "2023-01-19",
      "employment_period": "yugabyte-2021",
      "title": "FerretDB + YugabyteDB on Kubernetes (Amazon EKS): a MongoDB API to Distributed SQL, at scale",
      "url": "https://dev.to/aws-heroes/ferretdb-yugabytedb-on-kubernetes-amazon-eks-a-mongodb-api-to-distributed-sql-at-scale-1o2c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You probably want to rewrite it to benefit from SQL features but, rather than re-writing all at the same time, you can add a MongoDB-compatible API on top of PostgreSQL thanks to FerretDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332990",
      "database": "PostgreSQL",
      "date": "2023-01-19",
      "employment_period": "yugabyte-2021",
      "title": "FerretDB + YugabyteDB on Kubernetes (Amazon EKS): a MongoDB API to Distributed SQL, at scale",
      "url": "https://dev.to/aws-heroes/ferretdb-yugabytedb-on-kubernetes-amazon-eks-a-mongodb-api-to-distributed-sql-at-scale-1o2c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB has a Cassandra-compatible API (called YCQL) and a PostgreSQL-compatible one (called YSQL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1332990",
      "database": "YugabyteDB",
      "date": "2023-01-19",
      "employment_period": "yugabyte-2021",
      "title": "FerretDB + YugabyteDB on Kubernetes (Amazon EKS): a MongoDB API to Distributed SQL, at scale",
      "url": "https://dev.to/aws-heroes/ferretdb-yugabytedb-on-kubernetes-amazon-eks-a-mongodb-api-to-distributed-sql-at-scale-1o2c",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "Another optimization will be to avoid reading `information_schema.columns` which is slow on YugabyteDB (the catalog must be shared by all nodes).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1337805",
      "database": "PostgreSQL",
      "date": "2023-01-22",
      "employment_period": "yugabyte-2021",
      "title": "pREST on YugabyteDB",
      "url": "https://dev.to/yugabyte/prest-on-yugabytedb-f6a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Configures pREST, a Go REST proxy for PostgreSQL, against a YugabyteDB node via PREST_PG_URL, showing any cluster node can serve the generated REST API.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1337805",
      "database": "YugabyteDB",
      "date": "2023-01-22",
      "employment_period": "yugabyte-2021",
      "title": "pREST on YugabyteDB",
      "url": "https://dev.to/yugabyte/prest-on-yugabytedb-f6a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "pREST on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1340663",
      "database": "Amazon DynamoDB",
      "date": "2023-01-25",
      "employment_period": "yugabyte-2021",
      "title": "DynamoDB local in Docker",
      "url": "https://dev.to/aws-heroes/dynamodb-local-in-docker-25i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB local in Docker.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1340663",
      "database": "SQLite",
      "date": "2023-01-25",
      "employment_period": "yugabyte-2021",
      "title": "DynamoDB local in Docker",
      "url": "https://dev.to/aws-heroes/dynamodb-local-in-docker-25i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs AWS DynamoDB Local in a Docker container and shows its table data is actually persisted inside an SQLite database file, queryable directly with sqlite3.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1342121",
      "database": "YugabyteDB",
      "date": "2023-01-26",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB: when provisional records are applied to RegularDB from IntentsDB",
      "url": "https://dev.to/yugabyte/yugabytedb-when-provisional-records-are-applied-to-regulardb-from-intentsdb-5eif",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "delivers stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB: when provisional records are applied to RegularDB from IntentsDB.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1343222",
      "database": "PostgreSQL",
      "date": "2023-01-27",
      "employment_period": "yugabyte-2021",
      "title": "Blogs about by Vlad Mihalcea about YugabyteDB",
      "url": "https://dev.to/yugabyte/blogs-about-by-vlad-mihalcea-about-yugabytedb-39c0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I'll maintain here a list of post from Vlad Mihalcea (Java Champion, Hibernate Expert, ) about YugabyteDB (Open Source PostgreSQL-compatible Distributed SQL database).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1343222",
      "database": "YugabyteDB",
      "date": "2023-01-27",
      "employment_period": "yugabyte-2021",
      "title": "Blogs about by Vlad Mihalcea about YugabyteDB",
      "url": "https://dev.to/yugabyte/blogs-about-by-vlad-mihalcea-about-yugabytedb-39c0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Blogs about by Vlad Mihalcea about YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1347741",
      "database": "YugabyteDB",
      "date": "2023-01-31",
      "employment_period": "yugabyte-2021",
      "title": "Testing LSM-Tree merge for Size Amplification in YugabyteDB",
      "url": "https://dev.to/yugabyte/testing-lsm-tree-merge-for-size-amplification-in-yugabytedb-2kh9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Testing LSM-Tree merge for Size Amplification in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1348005",
      "database": "YugabyteDB",
      "date": "2023-01-31",
      "employment_period": "yugabyte-2021",
      "title": "LSM-Tree compaction in YugabyteDB - starting a series of posts",
      "url": "https://dev.to/yugabyte/lsm-tree-compaction-in-yugabytedb-starting-a-series-of-posts-577k",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Before starting, you may watch this great summary by John Meehan and Kannan Muthukkaruppan during the Yugabyte Friday Tech Talks: {% embed %} In short: - Size Amplification algorithm compares the size of all SST Files (which includes all intermediate changes) to the oldest one (which is supposed to be the target size when merging all changes).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1344275",
      "database": "Amazon Aurora",
      "date": "2023-02-02",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL: ⚠ when locking though views (TL;DR: test for race conditions and check execution plan with BUFFERS, VERBOSE)",
      "url": "https://dev.to/aws-heroes/postgresql-when-locking-though-views-tldr-test-for-race-conditions-and-check-execution-plan-with-buffers-verbose-28je",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Tests whether a locking select issued through a union-all view correctly blocks a concurrent update on Amazon Aurora PostgreSQL, warning that locking through views needs explicit concurrency testing.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1344275",
      "database": "PostgreSQL",
      "date": "2023-02-02",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL: ⚠ when locking though views (TL;DR: test for race conditions and check execution plan with BUFFERS, VERBOSE)",
      "url": "https://dev.to/aws-heroes/postgresql-when-locking-though-views-tldr-test-for-race-conditions-and-check-execution-plan-with-buffers-verbose-28je",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "The bug can be reported to the PostgreSQL mailing list, or the managed service support in the case of Aurora.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1344275",
      "database": "YugabyteDB",
      "date": "2023-02-02",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL: ⚠ when locking though views (TL;DR: test for race conditions and check execution plan with BUFFERS, VERBOSE)",
      "url": "https://dev.to/aws-heroes/postgresql-when-locking-though-views-tldr-test-for-race-conditions-and-check-execution-plan-with-buffers-verbose-28je",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The PostgreSQL compatibility of YugabyteDB, like Amazon Aurora, inherits the same behavior, so be careful and avoid to SELECT FOR UPDATE on UNION ALL views.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1352046",
      "database": "PostgreSQL",
      "date": "2023-02-03",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Managed API: provisioning a free DB from command line",
      "url": "https://dev.to/yugabyte/yugabytedb-managed-api-provisioning-a-free-db-from-command-line-47k6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "**YugabyteDB Managed** is the cloud service for YugabyteDB, PostgreSQL-compatible distributed SQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1352046",
      "database": "YugabyteDB",
      "date": "2023-02-03",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Managed API: provisioning a free DB from command line",
      "url": "https://dev.to/yugabyte/yugabytedb-managed-api-provisioning-a-free-db-from-command-line-47k6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Managed API: provisioning a free DB from command line.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1353953",
      "database": "Oracle Database",
      "date": "2023-02-06",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Recovery Time Objective (RTO) with PgBench: continuous availability with max. 15s latency on infrastructure failure",
      "url": "https://dev.to/yugabyte/yugabytedb-recovery-time-objective-rto-with-pgbench-continuous-availability-with-max-15-seconds-latency-on-failure-2po4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here are the protection/replication mode equivalence between Oracle Data Guard and PostgreSQL with Patroni | Impact on primary | Risk of data loss in case of DR | 🅾️Oracle with Data Guard | 🐘Postgres with Patroni | |:---:|:---:|:---:|:---:| | ✅ No impact | 🗑️ Missing transactions | Maximum Performance | asynchronous mode | | 🐢Performance | ⚠️ Can switch to async | Maximum Availability | synchronous mode | | 🚧Availabi",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1353953",
      "database": "PostgreSQL",
      "date": "2023-02-06",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Recovery Time Objective (RTO) with PgBench: continuous availability with max. 15s latency on infrastructure failure",
      "url": "https://dev.to/yugabyte/yugabytedb-recovery-time-objective-rto-with-pgbench-continuous-availability-with-max-15-seconds-latency-on-failure-2po4",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "incurs stated availability disadvantage"
      ],
      "evidence_excerpt": "Here are the protection/replication mode equivalence between Oracle Data Guard and PostgreSQL with Patroni | Impact on primary | Risk of data loss in case of DR | 🅾️Oracle with Data Guard | 🐘Postgres with Patroni | |:---:|:---:|:---:|:---:| | ✅ No impact | 🗑️ Missing transactions | Maximum Performance | asynchronous mode | | 🐢Performance | ⚠️ Can switch to async | Maximum Availability | synchronous mode | | 🚧Availabi",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1353953",
      "database": "YugabyteDB",
      "date": "2023-02-06",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Recovery Time Objective (RTO) with PgBench: continuous availability with max. 15s latency on infrastructure failure",
      "url": "https://dev.to/yugabyte/yugabytedb-recovery-time-objective-rto-with-pgbench-continuous-availability-with-max-15-seconds-latency-on-failure-2po4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Recovery Time Objective (RTO) with PgBench: continuous availability with max.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1355852",
      "database": "Oracle Database",
      "date": "2023-02-07",
      "employment_period": "yugabyte-2021",
      "title": "Oracle Auto indexes missing after ora2pg migration? Look at CONSTRAINT_INDEX",
      "url": "https://dev.to/yugabyte/oracle-auto-indexes-missing-after-ora2pg-migration-look-at-constraintindex-31p8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Auto indexes missing after ora2pg migration?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1355852",
      "database": "PostgreSQL",
      "date": "2023-02-07",
      "employment_period": "yugabyte-2021",
      "title": "Oracle Auto indexes missing after ora2pg migration? Look at CONSTRAINT_INDEX",
      "url": "https://dev.to/yugabyte/oracle-auto-indexes-missing-after-ora2pg-migration-look-at-constraintindex-31p8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "As YugabyteDB is PostgreSQL compatible, ora2pg is used when the source is Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1355852",
      "database": "YugabyteDB",
      "date": "2023-02-07",
      "employment_period": "yugabyte-2021",
      "title": "Oracle Auto indexes missing after ora2pg migration? Look at CONSTRAINT_INDEX",
      "url": "https://dev.to/yugabyte/oracle-auto-indexes-missing-after-ora2pg-migration-look-at-constraintindex-31p8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "As YugabyteDB is PostgreSQL compatible, ora2pg is used when the source is Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1358027",
      "database": "YugabyteDB",
      "date": "2023-02-08",
      "employment_period": "yugabyte-2021",
      "title": "SELECT DISTINCT pushdown to do a loose index scan (skip scan)",
      "url": "https://dev.to/yugabyte/select-distinct-pushdown-to-do-a-loose-index-scan-skip-scan-5e0p",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Shows a YugabyteDB release's new pushdown turning a twenty-million-row loose index scan for distinct values, previously taking over thirty seconds, into a fast skip scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1384868",
      "database": "PostgreSQL",
      "date": "2023-03-02",
      "employment_period": "yugabyte-2021",
      "title": "Foreign keys referencing partitioned tables in YugabyteDB",
      "url": "https://dev.to/yugabyte/foreign-keys-referencing-partitioned-tables-in-yugabytedb-26pn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "great",
        "improvement"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For sure, that's great improvement for PostgreSQL but does it have the same value for YugabyteDB?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1384868",
      "database": "YugabyteDB",
      "date": "2023-03-02",
      "employment_period": "yugabyte-2021",
      "title": "Foreign keys referencing partitioned tables in YugabyteDB",
      "url": "https://dev.to/yugabyte/foreign-keys-referencing-partitioned-tables-in-yugabytedb-26pn",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Foreign keys referencing partitioned tables in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1388312",
      "database": "YugabyteDB",
      "date": "2023-03-04",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Managed CLI: provisioning a free DB from the command line",
      "url": "https://dev.to/franckpachot/yugabytedb-managed-cli-provisioning-a-free-db-from-the-command-line-48np",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Managed CLI: provisioning a free DB from the command line.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1396189",
      "database": "YugabyteDB",
      "date": "2023-03-12",
      "employment_period": "yugabyte-2021",
      "title": "Simulate network latency in a YugabyteDB cluster, on a Docker lab",
      "url": "https://dev.to/yugabyte/simulate-network-latency-in-a-yugabytedb-cluster-on-a-docker-lab-264a",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "However, to be scalable, each YugabyteDB tablet is its own Raft group, with its own replication.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1400770",
      "database": "Oracle Database",
      "date": "2023-03-14",
      "employment_period": "yugabyte-2021",
      "title": "Scalable sequences in PostgreSQL / YugabyteDB",
      "url": "https://dev.to/yugabyte/scalable-sequences-in-postgresql-yugabytedb-107i",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "There is no need to partition the sequence like Scalable Sequences in Oracle Database because new values are appended to the LSM-Tree (no hot block issue) and you will probably use hash sharding on the generated key, even if range sharding is possible if you goal is to collocate rows inserted together.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1400770",
      "database": "PostgreSQL",
      "date": "2023-03-14",
      "employment_period": "yugabyte-2021",
      "title": "Scalable sequences in PostgreSQL / YugabyteDB",
      "url": "https://dev.to/yugabyte/scalable-sequences-in-postgresql-yugabytedb-107i",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Scalable sequences in PostgreSQL / YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1400770",
      "database": "YugabyteDB",
      "date": "2023-03-14",
      "employment_period": "yugabyte-2021",
      "title": "Scalable sequences in PostgreSQL / YugabyteDB",
      "url": "https://dev.to/yugabyte/scalable-sequences-in-postgresql-yugabytedb-107i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Scalable sequences in PostgreSQL / YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1403284",
      "database": "PostgreSQL",
      "date": "2023-03-16",
      "employment_period": "yugabyte-2021",
      "title": "Retype a column in YugabyteDB (and PostgreSQL)",
      "url": "https://dev.to/yugabyte/retype-a-column-in-yugabytedb-and-postgresql-36oj",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This can be done also with two application releases: - the first one adds the column and updates both of them in the application - the second one, after the update of all existing columns, removes the old one and renames the first one Even if, in theory, you don't need this in PostgreSQL because DDL is transactional, you still want to avoid long transactions in PostgreSQL and this is still a good alternative.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1403284",
      "database": "YugabyteDB",
      "date": "2023-03-16",
      "employment_period": "yugabyte-2021",
      "title": "Retype a column in YugabyteDB (and PostgreSQL)",
      "url": "https://dev.to/yugabyte/retype-a-column-in-yugabytedb-and-postgresql-36oj",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In YugabyteDB 2.19 you can simply: ```sql yugabyte=# alter table demo alter column a type bigint; ALTER TABLE ``` But you may still prefer to control when the change concerns metadata only (fast, but concurrent sessions may get a serializable error) or data (longer but with less impact on concurrent transactions).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1404643",
      "database": "YugabyteDB",
      "date": "2023-03-17",
      "employment_period": "yugabyte-2021",
      "title": "AWS EKS: Check if you are on CPU, IO, RAM pressure (a YugabyteDB example)",
      "url": "https://dev.to/aws-heroes/aws-eks-check-if-you-are-on-cpu-io-ram-pressure-a-yugabytedb-example-3in1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "AWS EKS: Check if you are on CPU, IO, RAM pressure (a YugabyteDB example).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1406855",
      "database": "YugabyteDB",
      "date": "2023-03-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB column-level locking for UPDATE",
      "url": "https://dev.to/yugabyte/yugabytedb-column-level-locking-for-update-41ko",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB column-level locking for UPDATE.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1413325",
      "database": "YugabyteDB",
      "date": "2023-04-02",
      "employment_period": "yugabyte-2021",
      "title": "Filtering on DENSE_RANK() optimized as pushed-down DISTINCT in YugabyteDB",
      "url": "https://dev.to/yugabyte/filtering-on-denserank-optimized-as-pushed-down-distinct-in-yugabytedb-5mp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Filtering on DENSE_RANK() optimized as pushed-down DISTINCT in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1401525",
      "database": "PostgreSQL",
      "date": "2023-04-03",
      "employment_period": "yugabyte-2021",
      "title": "UPSERT some columns in YugabyteDB (ON CONFLICT DO UPDATE)",
      "url": "https://dev.to/yugabyte/upsert-in-yugabytedb-236j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "NOT IN Being PostgreSQL compatible, the power of SQL with Common Table Expressions (CTE) helps to build a statement compound of multiple operations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1401525",
      "database": "YugabyteDB",
      "date": "2023-04-03",
      "employment_period": "yugabyte-2021",
      "title": "UPSERT some columns in YugabyteDB (ON CONFLICT DO UPDATE)",
      "url": "https://dev.to/yugabyte/upsert-in-yugabytedb-236j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "UPSERT some columns in YugabyteDB (ON CONFLICT DO UPDATE).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1430590",
      "database": "Oracle Database",
      "date": "2023-04-09",
      "employment_period": "yugabyte-2021",
      "title": "Scalable bounded COUNT DISTINCT in YugabyteDB",
      "url": "https://dev.to/yugabyte/combining-postgresql-partial-index-yugabytedb-hybrid-scan-and-pushed-down-limit-to-get-a-scalable-bounded-count-distinct-3geo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The following question was implicitly for Oracle Database: invoices have a status (paid/unpaid) and client (client_id) and we want to count, quickly, how many clients have unpaid invoices, stopping the count at 99 when there are more: {% embed %} To be efficient, we don't want to index all paid invoices, but only the unpaid ones.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1430590",
      "database": "PostgreSQL",
      "date": "2023-04-09",
      "employment_period": "yugabyte-2021",
      "title": "Scalable bounded COUNT DISTINCT in YugabyteDB",
      "url": "https://dev.to/yugabyte/combining-postgresql-partial-index-yugabytedb-hybrid-scan-and-pushed-down-limit-to-get-a-scalable-bounded-count-distinct-3geo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better",
        "good",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "That's already good and even better when limiting to 99 distinct values (with the PostgreSQL `limit` or `fetch first 99 rows only`): ```sql yugabyte=> select count(*) from ( select distinct client_id from invoice where status='unpaid' limit 99 ) as clients_unpaid; count ------- 99 (1 row) Time: 81.335 ms yugabyte=> select count(*) from ( select distinct client_id from invoice where status='unpaid' fetch first 99 rows",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1430590",
      "database": "YugabyteDB",
      "date": "2023-04-09",
      "employment_period": "yugabyte-2021",
      "title": "Scalable bounded COUNT DISTINCT in YugabyteDB",
      "url": "https://dev.to/yugabyte/combining-postgresql-partial-index-yugabytedb-hybrid-scan-and-pushed-down-limit-to-get-a-scalable-bounded-count-distinct-3geo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "efficient",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "**PostgreSQL** provides an easy declaration for partial index: ```sql create index invoice_unpaid on invoice ( client_id asc ) where status='unpaid'; ``` However, the PostgreSQL community recommends the WITH RECURSIVE for an efficient index scan: With **YugabyteDB** you can write the question as a simple SQL that describes the business rule: ```sql select count(*) from ( select distinct client_id from invoice where s",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1440611",
      "database": "Amazon Aurora",
      "date": "2023-04-19",
      "employment_period": "yugabyte-2021",
      "title": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB",
      "url": "https://dev.to/aws-heroes/drop-if-exists-create-if-not-exists-in-oracle-mysql-mariadb-postgresql-yugabytedb-pb1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example on AWS, an application built for PostgreSQL can run with the community release on EC2, or in the managed RDS PostgreSQL, or with distributed storage on AWS Aurora, and even as horizontally scalable Distributed SQL with YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1440611",
      "database": "MySQL",
      "date": "2023-04-19",
      "employment_period": "yugabyte-2021",
      "title": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB",
      "url": "https://dev.to/aws-heroes/drop-if-exists-create-if-not-exists-in-oracle-mysql-mariadb-postgresql-yugabytedb-pb1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1440611",
      "database": "Oracle Database",
      "date": "2023-04-19",
      "employment_period": "yugabyte-2021",
      "title": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB",
      "url": "https://dev.to/aws-heroes/drop-if-exists-create-if-not-exists-in-oracle-mysql-mariadb-postgresql-yugabytedb-pb1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1440611",
      "database": "PostgreSQL",
      "date": "2023-04-19",
      "employment_period": "yugabyte-2021",
      "title": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB",
      "url": "https://dev.to/aws-heroes/drop-if-exists-create-if-not-exists-in-oracle-mysql-mariadb-postgresql-yugabytedb-pb1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1440611",
      "database": "SQLite",
      "date": "2023-04-19",
      "employment_period": "yugabyte-2021",
      "title": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB",
      "url": "https://dev.to/aws-heroes/drop-if-exists-create-if-not-exists-in-oracle-mysql-mariadb-postgresql-yugabytedb-pb1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The following statements: ```sql drop table if exists demo; create table if not exists demo ( a int ); ``` run the same on the most popular Open Source databases: SQLite, MySQL, MariaDB, PostgreSQL and compatible like YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1440611",
      "database": "YugabyteDB",
      "date": "2023-04-19",
      "employment_period": "yugabyte-2021",
      "title": "DROP IF EXISTS & CREATE IF NOT EXISTS in Oracle, MySQL, MariaDB, PostgreSQL, YugabyteDB",
      "url": "https://dev.to/aws-heroes/drop-if-exists-create-if-not-exists-in-oracle-mysql-mariadb-postgresql-yugabytedb-pb1",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For example on AWS, an application built for PostgreSQL can run with the community release on EC2, or in the managed RDS PostgreSQL, or with distributed storage on AWS Aurora, and even as horizontally scalable Distributed SQL with YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1442277",
      "database": "Microsoft SQL Server",
      "date": "2023-04-20",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB: Achieving High Availability and Disaster Recovery with Two Data Centers",
      "url": "https://www.yugabyte.com/blog/high-availability-disaster-recovery-two-data-centers/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "So as a reference for those migrating from traditional databases to <a href=\" SQL</a>, let’s examine traditional database log streaming replication,to ensure the same Recovery Point Objective (RPO) and Recovery Time Objective (RTO) is maintained after migrating to an horizontally scalable architecture.</p> <h2 id=\"traditional-monolithic-databases-physical-replication\"><a href=\"#traditional-monolithic-databases-physic",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1442277",
      "database": "Oracle Database",
      "date": "2023-04-20",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB: Achieving High Availability and Disaster Recovery with Two Data Centers",
      "url": "https://www.yugabyte.com/blog/high-availability-disaster-recovery-two-data-centers/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "So as a reference for those migrating from traditional databases to <a href=\" SQL</a>, let’s examine traditional database log streaming replication,to ensure the same Recovery Point Objective (RPO) and Recovery Time Objective (RTO) is maintained after migrating to an horizontally scalable architecture.</p> <h2 id=\"traditional-monolithic-databases-physical-replication\"><a href=\"#traditional-monolithic-databases-physic",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1442277",
      "database": "YugabyteDB",
      "date": "2023-04-20",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB: Achieving High Availability and Disaster Recovery with Two Data Centers",
      "url": "https://www.yugabyte.com/blog/high-availability-disaster-recovery-two-data-centers/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The good news is that this can be accomplished without any data loss, thanks to a graceful failover that ensures the primary has replicated all write operations before the switch takes place.</p> <p>Note that YugabyteDB is the only distributed SQL database that provides cross-cluster replication, and is true open source.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27432",
      "database": "Oracle Database",
      "date": "2023-04-20",
      "employment_period": "yugabyte-2021",
      "title": "Achieving High Availability and Disaster Recovery with Two Data Centers",
      "url": "https://www.yugabyte.com/blog/high-availability-disaster-recovery-two-data-centers/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In a two data center configuration, the “Max Availability” mode of Oracle Data Guard, the “Synchronous-commit” in Always On, or the “non-strict synchronous mode” of Patroni, adds latency to all transactions and typically only allows for no data loss recovery when there’s no failure to recover.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27432",
      "database": "YugabyteDB",
      "date": "2023-04-20",
      "employment_period": "yugabyte-2021",
      "title": "Achieving High Availability and Disaster Recovery with Two Data Centers",
      "url": "https://www.yugabyte.com/blog/high-availability-disaster-recovery-two-data-centers/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Synchronous replication in the Raft groups, which requires the majority of replicas for each tablet, is crucial to YugabyteDB’s cluster resilience as it ensures a zero data loss failover (or Recovery Point Objective of zero) for high availability .",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1441822",
      "database": "PostgreSQL",
      "date": "2023-04-22",
      "employment_period": "yugabyte-2021",
      "title": "Range indexes for LIKE queries in YugabyteDB",
      "url": "https://dev.to/yugabyte/range-indexes-for-like-queries-in-yugabytedb-10kd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## More about Trigrams In addition to indexing text by trigrams, `pg_trgm` comes with interesting functions and YugabyteDB being PostgreSQL compatible, supports all of them.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1441822",
      "database": "YugabyteDB",
      "date": "2023-04-22",
      "employment_period": "yugabyte-2021",
      "title": "Range indexes for LIKE queries in YugabyteDB",
      "url": "https://dev.to/yugabyte/range-indexes-for-like-queries-in-yugabytedb-10kd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Range indexes for LIKE queries in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1448597",
      "database": "PostgreSQL",
      "date": "2023-04-26",
      "employment_period": "yugabyte-2021",
      "title": "How ACID is Citus? (compared to YugabyteDB)",
      "url": "https://dev.to/yugabyte/how-acid-is-citusdb-3j8f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Among them, the only one which is **PostgreSQL-compatible** when it comes to transactions is YugabyteDB as the others do not have the same features and behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1448597",
      "database": "YugabyteDB",
      "date": "2023-04-26",
      "employment_period": "yugabyte-2021",
      "title": "How ACID is Citus? (compared to YugabyteDB)",
      "url": "https://dev.to/yugabyte/how-acid-is-citusdb-3j8f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "(compared to YugabyteDB).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1449387",
      "database": "Oracle Database",
      "date": "2023-04-27",
      "employment_period": "yugabyte-2021",
      "title": "🦦 What OtterTune hates the most in PostgreSQL🐘 is solved in YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/what-ottertune-hates-the-most-in-postgresql-is-solved-in-yugabytedb-1l1o",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "### fast rollback I have been working a lot with Oracle Database, that I've always considered as the best implementation of MVCC for Heap Tables and B-Trees: {% embed %} However, there's one case where **PostgreSQL** is better.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1449387",
      "database": "PostgreSQL",
      "date": "2023-04-27",
      "employment_period": "yugabyte-2021",
      "title": "🦦 What OtterTune hates the most in PostgreSQL🐘 is solved in YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/what-ottertune-hates-the-most-in-postgresql-is-solved-in-yugabytedb-1l1o",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 7,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [
        "advantage",
        "better",
        "fast",
        "faster",
        "good",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Basically, the OtterTune article is explaining some cons of the MVCC implementation in PostgreSQL, with good explanations, but no nuances.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1449387",
      "database": "YugabyteDB",
      "date": "2023-04-27",
      "employment_period": "yugabyte-2021",
      "title": "🦦 What OtterTune hates the most in PostgreSQL🐘 is solved in YugabyteDB🚀",
      "url": "https://dev.to/yugabyte/what-ottertune-hates-the-most-in-postgresql-is-solved-in-yugabytedb-1l1o",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "fast",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB benefits from the same behavior: fast rollback: ```sql yugabyte=> begin transaction; BEGIN Time: 31.178 ms yugabyte=*> delete from demo; DELETE 10000000 Time: 376758.463 ms (06:16.758) yugabyte=*> rollback; ROLLBACK Time: 31.061 ms ``` This is not only useful for user rollbacks, but is also critical for the Recovery Time Objective.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1450485",
      "database": "CockroachDB",
      "date": "2023-04-28",
      "employment_period": "yugabyte-2021",
      "title": "TiDB: Distributed MySQL with Foreign Key (not production ready) and not Serializable",
      "url": "https://dev.to/franckpachot/tidb-foreign-key-but-not-serializable-4bfn",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Clearly, TiDB doesn't try to be compatible with MySQL on isolation levels like CockroachDB is not with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1450485",
      "database": "MySQL",
      "date": "2023-04-28",
      "employment_period": "yugabyte-2021",
      "title": "TiDB: Distributed MySQL with Foreign Key (not production ready) and not Serializable",
      "url": "https://dev.to/franckpachot/tidb-foreign-key-but-not-serializable-4bfn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here is the version I'm running on: ``` mysql> select version(); +-------------------------------+ | version() | +-------------------------------+ | 5.7.25-TiDB-v6.6.0-serverless | +-------------------------------+ 1 row in set (0.19 sec) ``` There is a good documentation about transactions and isolation levels: which explains what is supported and how it is different from other databases, including MySQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1450485",
      "database": "PostgreSQL",
      "date": "2023-04-28",
      "employment_period": "yugabyte-2021",
      "title": "TiDB: Distributed MySQL with Foreign Key (not production ready) and not Serializable",
      "url": "https://dev.to/franckpachot/tidb-foreign-key-but-not-serializable-4bfn",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Clearly, TiDB doesn't try to be compatible with MySQL on isolation levels like CockroachDB is not with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1450485",
      "database": "YugabyteDB",
      "date": "2023-04-28",
      "employment_period": "yugabyte-2021",
      "title": "TiDB: Distributed MySQL with Foreign Key (not production ready) and not Serializable",
      "url": "https://dev.to/franckpachot/tidb-foreign-key-but-not-serializable-4bfn",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The documentation has a good list of compatibility with MySQL: All these SQL features are supported in YugabyteDB (with their PostgreSQL syntax and behavior of course).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1452498",
      "database": "Oracle Database",
      "date": "2023-04-30",
      "employment_period": "yugabyte-2021",
      "title": "Importing from Oracle Edition Based Redefinition (EBR) to YugabyteDB",
      "url": "https://dev.to/yugabyte/importing-from-oracle-edition-based-redefinition-ebr-to-yugabytedb-19c0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Importing from Oracle Edition Based Redefinition (EBR) to YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1452498",
      "database": "PostgreSQL",
      "date": "2023-04-30",
      "employment_period": "yugabyte-2021",
      "title": "Importing from Oracle Edition Based Redefinition (EBR) to YugabyteDB",
      "url": "https://dev.to/yugabyte/importing-from-oracle-edition-based-redefinition-ebr-to-yugabytedb-19c0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Tests whether a migration tool's schema exporter correctly reads the current edition from an Oracle database using edition-based redefinition, since PostgreSQL has no equivalent feature.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1452498",
      "database": "YugabyteDB",
      "date": "2023-04-30",
      "employment_period": "yugabyte-2021",
      "title": "Importing from Oracle Edition Based Redefinition (EBR) to YugabyteDB",
      "url": "https://dev.to/yugabyte/importing-from-oracle-edition-based-redefinition-ebr-to-yugabytedb-19c0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Importing from Oracle Edition Based Redefinition (EBR) to YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "Amazon Aurora",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "If you are looking for a database service similar to RDS, you may be looking for a managed database service with excellent compatibility with other databases, as seen with Aurora, which uses the same API with a different storage layer.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "Amazon DynamoDB",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Applications that need to store a state can utilize highly available services such as S3 or DynamoDB, which are also resilient to zone failures.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "CockroachDB",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Based on the Google Spanner architecture, databases such as Spanner, CockroachDB, TiDB, and YugabyteDB can be deployed with a replication factor of three across three availability zones, making them resilient to a zone failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "Microsoft SQL Server",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "### SQL Server !Image description SQL Server offers only one type of \"Multi-AZ\" deployment, which differs from the other options mentioned above.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "MySQL",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## RDS Aurora !Image description Aurora databases, whether MySQL or PostgreSQL compatible, and whether \"Multi-AZ\" is chosen or not, store the database across three availability zones.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "Oracle Database",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "One exception is Oracle RAC, which can run a database with multiple read-write instances and offers protection against instance failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "PostgreSQL",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## RDS Aurora !Image description Aurora databases, whether MySQL or PostgreSQL compatible, and whether \"Multi-AZ\" is chosen or not, store the database across three availability zones.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1453309",
      "database": "YugabyteDB",
      "date": "2023-05-01",
      "employment_period": "yugabyte-2021",
      "title": "“Multi-AZ” in Amazon RDS and how it may differ from High Availability or resilience to failures",
      "url": "https://dev.to/aws-heroes/multi-az-in-amazon-rds-and-how-it-differs-from-high-availability-gn9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Based on the Google Spanner architecture, databases such as Spanner, CockroachDB, TiDB, and YugabyteDB can be deployed with a replication factor of three across three availability zones, making them resilient to a zone failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1456531",
      "database": "Oracle Database",
      "date": "2023-05-03",
      "employment_period": "yugabyte-2021",
      "title": "Unwrap Oracle Home .plb",
      "url": "https://dev.to/aws-heroes/unwrap-oracle-home-plb-bn0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unwrap Oracle Home .plb.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1468642",
      "database": "PostgreSQL",
      "date": "2023-05-15",
      "employment_period": "yugabyte-2021",
      "title": "Generate Random Text Strings in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-random-text-strings-in-postgresql/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Covers PostgreSQL techniques for generating random text strings, useful for test data, sample rows, or fuzzing text-handling code paths.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27869",
      "database": "Oracle Database",
      "date": "2023-05-15",
      "employment_period": "yugabyte-2021",
      "title": "Generate Random Text Strings in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-random-text-strings-in-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "There are many functions in Orafce that are not only useful when migrating from Oracle but are also convenient utility functions to enhance the PostgreSQL ones.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27869",
      "database": "PostgreSQL",
      "date": "2023-05-15",
      "employment_period": "yugabyte-2021",
      "title": "Generate Random Text Strings in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-random-text-strings-in-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Generate Random Text Strings in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27869",
      "database": "YugabyteDB",
      "date": "2023-05-15",
      "employment_period": "yugabyte-2021",
      "title": "Generate Random Text Strings in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-random-text-strings-in-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Installs the Orafce extension's dbms_random.string function, available by default on YugabyteDB, to generate printable, alphabetic, or case-restricted random strings for test data.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1469717",
      "database": "PostgreSQL",
      "date": "2023-05-16",
      "employment_period": "yugabyte-2021",
      "title": "Install extensions from PGDG repo to YugabyteDB in Alma8",
      "url": "https://dev.to/yugabyte/install-extensions-from-pgdg-repo-to-yugabytedb-in-alma8-28in",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Installs a sequential-UUID-generating PostgreSQL 11 extension from a package repository into a YugabyteDB AlmaLinux 8 container by extracting the package instead of compiling from source.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1469717",
      "database": "YugabyteDB",
      "date": "2023-05-16",
      "employment_period": "yugabyte-2021",
      "title": "Install extensions from PGDG repo to YugabyteDB in Alma8",
      "url": "https://dev.to/yugabyte/install-extensions-from-pgdg-repo-to-yugabytedb-in-alma8-28in",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Install extensions from PGDG repo to YugabyteDB in Alma8.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1470183",
      "database": "Amazon Aurora",
      "date": "2023-05-17",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan in views? No. But in UDFs, Yes",
      "url": "https://dev.to/aws-heroes/pghintplan-in-views-no-but-in-udfs-yes-5159",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This demo runs the same on PostgreSQL with the extension installed (example), or on **PostgreSQL-compatible** databases, like Amazon Aurora on AWS, when adding `pg_hint_plan` to `shared_preload_libraries`.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1470183",
      "database": "CockroachDB",
      "date": "2023-05-17",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan in views? No. But in UDFs, Yes",
      "url": "https://dev.to/aws-heroes/pghintplan-in-views-no-but-in-udfs-yes-5159",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "To be clear, as I've been asked when presenting about `pg_hint_plan`, CockroachDB is not PostgreSQL-compatible beyond the wire protocol, some syntax and a limited subset of features, and you cannot install PostgreSQL extensions, so this doesn't apply to CRDB at all.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1470183",
      "database": "PostgreSQL",
      "date": "2023-05-17",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan in views? No. But in UDFs, Yes",
      "url": "https://dev.to/aws-heroes/pghintplan-in-views-no-but-in-udfs-yes-5159",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL is so powerful that there's always a feature to help.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27868",
      "database": "Oracle Database",
      "date": "2023-05-22",
      "employment_period": "yugabyte-2021",
      "title": "Generate SQL Script in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-sql-script-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The query could be: select 'alter table \"'||schemaname||'\".\"'||tablename||'\" add column' from pg_tables where schemaname='public' and tablename like 'customer%'; I did that a lot with the Oracle database but PostgreSQL is better with the format() function.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27868",
      "database": "PostgreSQL",
      "date": "2023-05-22",
      "employment_period": "yugabyte-2021",
      "title": "Generate SQL Script in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-sql-script-postgresql/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The query could be: select 'alter table \"'||schemaname||'\".\"'||tablename||'\" add column' from pg_tables where schemaname='public' and tablename like 'customer%'; I did that a lot with the Oracle database but PostgreSQL is better with the format() function.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:27868",
      "database": "YugabyteDB",
      "date": "2023-05-22",
      "employment_period": "yugabyte-2021",
      "title": "Generate SQL Script in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-sql-script-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Let’s walk through an example using YugabyteDB, which is Postgres-compatible and provides the same SQL language and catalog views as PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1477224",
      "database": "PostgreSQL",
      "date": "2023-05-23",
      "employment_period": "yugabyte-2021",
      "title": "Generate SQL Script in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/generate-sql-script-postgresql/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Generate SQL Script in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1479575",
      "database": "PostgreSQL",
      "date": "2023-05-24",
      "employment_period": "yugabyte-2021",
      "title": "Parallel Scan in YugabyteDB (ysql_select_parallelism=-1)",
      "url": "https://dev.to/yugabyte/parallel-scan-in-yugabytedb-ysqlselectparallelism-1-49in",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "When you connect to YugabyteDB **YSQL** (the PostgreSQL compatible API) your session executes the SQL statement from one process (the PostgreSQL backend parsing the query and executing the plan) which **reads** and **writes**, by **batch of rows**, from/to the tablet servers where the rows are **distributed**.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1479575",
      "database": "YugabyteDB",
      "date": "2023-05-24",
      "employment_period": "yugabyte-2021",
      "title": "Parallel Scan in YugabyteDB (ysql_select_parallelism=-1)",
      "url": "https://dev.to/yugabyte/parallel-scan-in-yugabytedb-ysqlselectparallelism-1-49in",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Parallel Scan in YugabyteDB (ysql_select_parallelism=-1).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1479838",
      "database": "PostgreSQL",
      "date": "2023-05-24",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Community Open Hours: Episode 1, In The Beginning...",
      "url": "https://dev.to/yugabyte/yugabytedb-community-open-hours-episode-1-in-the-beginning-54c9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Introduces a community Q&A session centered on distributed SQL, PostgreSQL compatibility, and open source topics around YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1479838",
      "database": "YugabyteDB",
      "date": "2023-05-24",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Community Open Hours: Episode 1, In The Beginning...",
      "url": "https://dev.to/yugabyte/yugabytedb-community-open-hours-episode-1-in-the-beginning-54c9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Community Open Hours: Episode 1, In The Beginning....",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1481163",
      "database": "YugabyteDB",
      "date": "2023-05-25",
      "employment_period": "yugabyte-2021",
      "title": "Approximate Count for hash sharded YugabyteDB tables",
      "url": "https://dev.to/franckpachot/approximate-count-for-hash-sharded-yugabytedb-tables-48nj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Approximate Count for hash sharded YugabyteDB tables.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1483145",
      "database": "Oracle Database",
      "date": "2023-05-30",
      "employment_period": "yugabyte-2021",
      "title": "DROP TABLE while being read: wait or wound?",
      "url": "https://dev.to/aws-heroes/drop-table-while-being-read-wait-or-wound-57l5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares how Oracle lets a concurrent select keep reading a dropped table until its physical blocks are reused, eventually failing, against another database's different DDL-versus-read handling.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1483145",
      "database": "PostgreSQL",
      "date": "2023-05-30",
      "employment_period": "yugabyte-2021",
      "title": "DROP TABLE while being read: wait or wound?",
      "url": "https://dev.to/aws-heroes/drop-table-while-being-read-wait-or-wound-57l5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "LOCATION: YBPrepareCacheRefreshIfNeeded, postgres.c:3914 -- retry yugabyte=!# rollback; ROLLBACK yugabyte=# select count(*) from demo; count ------- 1000 (1 row) ``` Changing the primary key in YugabyteDB is re-creating the table in the background because tables are stored in their primary key LSM-Tree to get fast access for the main access pattern (this is different from PostgreSQL and Oracle heap tables).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1483145",
      "database": "YugabyteDB",
      "date": "2023-05-30",
      "employment_period": "yugabyte-2021",
      "title": "DROP TABLE while being read: wait or wound?",
      "url": "https://dev.to/aws-heroes/drop-table-while-being-read-wait-or-wound-57l5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Being **PostgreSQL-compatible**, YugabyteDB adopts the PostgreSQL semantics as much as possible.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1487446",
      "database": "PostgreSQL",
      "date": "2023-05-31",
      "employment_period": "yugabyte-2021",
      "title": "Compile pg_math for YugabyteDB (wrapper on GNU Scientific Library distribution functions)",
      "url": "https://dev.to/yugabyte/compile-pgmath-for-yugabytedb-wrapper-on-gnu-scientific-library-distribution-functions-2d04",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compiles a statistics-function wrapper extension against PostgreSQL 11 development headers inside an AlmaLinux 8 container to add scientific distribution functions to YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1487446",
      "database": "YugabyteDB",
      "date": "2023-05-31",
      "employment_period": "yugabyte-2021",
      "title": "Compile pg_math for YugabyteDB (wrapper on GNU Scientific Library distribution functions)",
      "url": "https://dev.to/yugabyte/compile-pgmath-for-yugabytedb-wrapper-on-gnu-scientific-library-distribution-functions-2d04",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compile pg_math for YugabyteDB (wrapper on GNU Scientific Library distribution functions).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1486595",
      "database": "PostgreSQL",
      "date": "2023-06-01",
      "employment_period": "yugabyte-2021",
      "title": "connecting with psql 16 beta to YugabyteDB and use the most recent features",
      "url": "https://dev.to/yugabyte/connecting-with-psql-16-beta-to-yugabytedb-and-use-recent-features-3glp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compiles a newer beta PostgreSQL client to connect to an older YugabyteDB backend, demonstrating a repeat-count option for watch and the extended-protocol bind-and-execute syntax.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1486595",
      "database": "YugabyteDB",
      "date": "2023-06-01",
      "employment_period": "yugabyte-2021",
      "title": "connecting with psql 16 beta to YugabyteDB and use the most recent features",
      "url": "https://dev.to/yugabyte/connecting-with-psql-16-beta-to-yugabytedb-and-use-recent-features-3glp",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [
        "better",
        "good",
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The new `\\set VERBOSITY sqlstate` shows only the SQLSTATE without the error message, which makes it easier to get reproducible output: ```sql yugabyte=# \\set VERBOSITY default yugabyte=# select 0/0; ERROR: division by zero yugabyte=# \\set VERBOSITY verbose yugabyte=# select 0/0; ERROR: 22012: division by zero LOCATION: int4div, int.c:820 yugabyte=# \\set VERBOSITY sqlstate yugabyte=# select 0/0; ERROR: 22012 ``` I use",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1491603",
      "database": "PostgreSQL",
      "date": "2023-06-04",
      "employment_period": "yugabyte-2021",
      "title": "UPDATE RETURNING OLD | NEW in YugabyteDB and PostgreSQL",
      "url": "https://dev.to/yugabyte/update-returning-old-new-in-yugabytedb-and-postgresql-5070",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "UPDATE RETURNING OLD | NEW in YugabyteDB and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1491603",
      "database": "YugabyteDB",
      "date": "2023-06-04",
      "employment_period": "yugabyte-2021",
      "title": "UPDATE RETURNING OLD | NEW in YugabyteDB and PostgreSQL",
      "url": "https://dev.to/yugabyte/update-returning-old-new-in-yugabytedb-and-postgresql-5070",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "UPDATE RETURNING OLD | NEW in YugabyteDB and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1501627",
      "database": "PostgreSQL",
      "date": "2023-06-12",
      "employment_period": "yugabyte-2021",
      "title": "PGLOADBALANCEHOSTS",
      "url": "https://dev.to/yugabyte/pgloadbalancehosts-1be6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example using the basic **load balancing** provided by the PostgreSQL client library.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1501627",
      "database": "YugabyteDB",
      "date": "2023-06-12",
      "employment_period": "yugabyte-2021",
      "title": "PGLOADBALANCEHOSTS",
      "url": "https://dev.to/yugabyte/pgloadbalancehosts-1be6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Demonstrates client-side load balancing across a three-node YugabyteDB cluster using only a comma-separated host list and pgbench, without any external proxy or specialized driver.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1503622",
      "database": "YugabyteDB",
      "date": "2023-06-13",
      "employment_period": "yugabyte-2021",
      "title": "Approximate COUNT YugabyteDB Community Open Hours: Episode 2: Extensions and Smart Driver",
      "url": "https://dev.to/franckpachot/approximate-count-yugabytedb-community-open-hours-episode-2-extensions-and-smart-driver-2me4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Approximate COUNT YugabyteDB Community Open Hours: Episode 2: Extensions and Smart Driver.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28212",
      "database": "PostgreSQL",
      "date": "2023-06-13",
      "employment_period": "yugabyte-2021",
      "title": "How to Check Your PostgreSQL Version",
      "url": "https://www.yugabyte.com/blog/check-postgresql-version/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 12,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Show server_version_num When it comes to PostgreSQL minor and major versions, better use the numeric version of it rather than parsing the text string.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28212",
      "database": "YugabyteDB",
      "date": "2023-06-13",
      "employment_period": "yugabyte-2021",
      "title": "How to Check Your PostgreSQL Version",
      "url": "https://www.yugabyte.com/blog/check-postgresql-version/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares the server_version parameter reported by native PostgreSQL 15.1 against YugabyteDB's -YB- suffixed banner to show how compatibility versioning differs from the service version.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1504732",
      "database": "PostgreSQL",
      "date": "2023-06-14",
      "employment_period": "yugabyte-2021",
      "title": "One fat index, or two indexes on each columns? PostgreSQL vs. YugabyteDB",
      "url": "https://dev.to/yugabyte/one-fat-index-or-two-indexes-on-each-columns-postgresql-vs-yugabytedb-ngj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1504732",
      "database": "YugabyteDB",
      "date": "2023-06-14",
      "employment_period": "yugabyte-2021",
      "title": "One fat index, or two indexes on each columns? PostgreSQL vs. YugabyteDB",
      "url": "https://dev.to/yugabyte/one-fat-index-or-two-indexes-on-each-columns-postgresql-vs-yugabytedb-ngj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1506665",
      "database": "PostgreSQL",
      "date": "2023-06-16",
      "employment_period": "yugabyte-2021",
      "title": "Indexing JSON in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/index-json-postgresql/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Indexing JSON in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1506669",
      "database": "PostgreSQL",
      "date": "2023-06-16",
      "employment_period": "yugabyte-2021",
      "title": "Indexing for LIKE Queries in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/postgresql-like-query-performance-variations/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Indexing for LIKE Queries in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1506670",
      "database": "PostgreSQL",
      "date": "2023-06-16",
      "employment_period": "yugabyte-2021",
      "title": "How to Check Your PostgreSQL Version",
      "url": "https://www.yugabyte.com/blog/check-postgresql-version/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "How to Check Your PostgreSQL Version.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1493413",
      "database": "YugabyteDB",
      "date": "2023-06-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB fast path write",
      "url": "https://dev.to/yugabyte/yugabytedb-fast-path-write-51hm",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB fast path write.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1508080",
      "database": "Oracle Database",
      "date": "2023-06-19",
      "employment_period": "yugabyte-2021",
      "title": "Global Unique Constraint on a partitioned table in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/global-unique-constraint-on-a-partitioned-table-in-postgresql-and-yugabytedb-4nh6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "One limitation of PostgreSQL declarative partitioning, when compared to some other databases like Oracle, is the impossibility to create **global indexes**.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1508080",
      "database": "PostgreSQL",
      "date": "2023-06-19",
      "employment_period": "yugabyte-2021",
      "title": "Global Unique Constraint on a partitioned table in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/global-unique-constraint-on-a-partitioned-table-in-postgresql-and-yugabytedb-4nh6",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "limitation",
        "named source of disadvantages"
      ],
      "evidence_excerpt": "One limitation of PostgreSQL declarative partitioning, when compared to some other databases like Oracle, is the impossibility to create **global indexes**.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1508080",
      "database": "YugabyteDB",
      "date": "2023-06-19",
      "employment_period": "yugabyte-2021",
      "title": "Global Unique Constraint on a partitioned table in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/global-unique-constraint-on-a-partitioned-table-in-postgresql-and-yugabytedb-4nh6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The closest to PostgreSQL is YugabyteDB which provides all SQL features on a horizontally scalable infrastructure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1514287",
      "database": "PostgreSQL",
      "date": "2023-06-23",
      "employment_period": "yugabyte-2021",
      "title": "How to Select the First Row of Each Set of Grouped Rows Using GROUP BY",
      "url": "https://www.yugabyte.com/blog/select-first-row-group-by-postgresql/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows several PostgreSQL techniques for returning the first row per group, comparing grouped-query patterns that keep detail rows instead of aggregating them away.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1514423",
      "database": "PostgreSQL",
      "date": "2023-06-23",
      "employment_period": "yugabyte-2021",
      "title": "wiki.js on YugabyteDB",
      "url": "https://dev.to/yugabyte/wikijs-on-yugabytedb-dl0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Adapts a popular wiki application's docker-compose file to replace its PostgreSQL image with YugabyteDB, renaming environment variables and enabling read-committed isolation by default.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1514423",
      "database": "YugabyteDB",
      "date": "2023-06-23",
      "employment_period": "yugabyte-2021",
      "title": "wiki.js on YugabyteDB",
      "url": "https://dev.to/yugabyte/wikijs-on-yugabytedb-dl0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "wiki.js on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28372",
      "database": "PostgreSQL",
      "date": "2023-06-26",
      "employment_period": "yugabyte-2021",
      "title": "How to Create a Conditional WHERE Clause in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/conditional-where-clause-postgresql/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Since the release of PostgreSQL 12, you can control that with plan_cache_mode , but there is a better solution that provides the best performance for custom and generic plans.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28372",
      "database": "YugabyteDB",
      "date": "2023-06-26",
      "employment_period": "yugabyte-2021",
      "title": "How to Create a Conditional WHERE Clause in PostgreSQL",
      "url": "https://www.yugabyte.com/blog/conditional-where-clause-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "yugabyte=# select country, consumer_goods, index from demo where country='Switzerland' order by index desc; country | consumer_goods | index -------------+--------------------------+-------- Switzerland | Groceries | 128.13 Switzerland | Cost of Living | 123.35 Switzerland | Restaurant Price | 122.09 Switzerland | Local Purchasing Power | 118.44 Switzerland | Cost of Living Plus Rent | 90.62 Switzerland | Rent | 53.5",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1519961",
      "database": "YugabyteDB",
      "date": "2023-06-28",
      "employment_period": "yugabyte-2021",
      "title": "Quickly testing an extension from docker image",
      "url": "https://dev.to/yugabyte/quickly-testing-an-extension-from-docker-image-372m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [
        "unsupported"
      ],
      "evidence_excerpt": "Extracts a graph-database extension's files directly from its official Docker image into a tarball to quickly test on YugabyteDB, hitting an immediate unsupported object-identifier failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1521821",
      "database": "PostgreSQL",
      "date": "2023-06-30",
      "employment_period": "yugabyte-2021",
      "title": "Approximate Count Distinct in YugabyteDB (and PostgreSQL) with HyperLogLog",
      "url": "https://dev.to/yugabyte/approximate-count-distinct-in-yugabytedb-and-postgresql-with-hyperloglog-1i13",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Approximate Count Distinct in YugabyteDB (and PostgreSQL) with HyperLogLog.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1521821",
      "database": "YugabyteDB",
      "date": "2023-06-30",
      "employment_period": "yugabyte-2021",
      "title": "Approximate Count Distinct in YugabyteDB (and PostgreSQL) with HyperLogLog",
      "url": "https://dev.to/yugabyte/approximate-count-distinct-in-yugabytedb-and-postgresql-with-hyperloglog-1i13",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 6,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "fast",
        "faster",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The less distinct values, and the faster it is: ```sql yugabyte=# select count(*) from ( select distinct val1 from demo where val1>=(select min(val1) from demo) ) distinct_pushdown ; Time: 17724.416 ms (00:17.724) count ------- 99 (1 row) Time: 15.813 ms ``` This one is really fast.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1524837",
      "database": "PostgreSQL",
      "date": "2023-07-03",
      "employment_period": "yugabyte-2021",
      "title": "Book review: Mastering PostgreSQL 15",
      "url": "https://dev.to/aws-heroes/book-review-mastering-postgresql-15-2d8m",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 14,
      "positive_signals": [
        "excellent",
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Nonetheless, the book does an excellent job of describing PostgreSQL features in these areas.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1524941",
      "database": "PostgreSQL",
      "date": "2023-07-05",
      "employment_period": "yugabyte-2021",
      "title": "Query Amazon Redshift from YugabyteDB though PostgreSQL Foreign Data Wrapper and VPC peering",
      "url": "https://dev.to/aws-heroes/query-redshift-from-yugabytedb-though-postgresql-foreign-data-wrapper-on-the-same-vpc-4m7j",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Both of them have their query layer based on PostgreSQL which makes it easy to inter-connect (same datatypes, same catalog views...) and are horizontally scalable.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1524941",
      "database": "YugabyteDB",
      "date": "2023-07-05",
      "employment_period": "yugabyte-2021",
      "title": "Query Amazon Redshift from YugabyteDB though PostgreSQL Foreign Data Wrapper and VPC peering",
      "url": "https://dev.to/aws-heroes/query-redshift-from-yugabytedb-though-postgresql-foreign-data-wrapper-on-the-same-vpc-4m7j",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Redshift is a scalable database service for Data Warehouse and YugabyteDB a distributed SQL database for OLTP.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1529363",
      "database": "PostgreSQL",
      "date": "2023-07-10",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB: set read-only for a single query to allow follower reads",
      "url": "https://dev.to/yugabyte/yugabytedb-set-read-only-for-a-single-query-to-allow-follower-reads-28k5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "No, and you would get `ERROR: cannot set transaction read-write mode inside a read-only transaction` ## Explicit transaction with READ ONLY If `yb_read_from_followers=on` is already set, it is much better to define READ ONLY at the scope of the transaction: ```sql start transaction read only; select count(*) from demo where x between 1 and 42; commit; ``` However, as your goal is a single-query, you don't want 3 roun",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1529363",
      "database": "YugabyteDB",
      "date": "2023-07-10",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB: set read-only for a single query to allow follower reads",
      "url": "https://dev.to/yugabyte/yugabytedb-set-read-only-for-a-single-query-to-allow-follower-reads-28k5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB: set read-only for a single query to allow follower reads.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28484",
      "database": "PostgreSQL",
      "date": "2023-07-10",
      "employment_period": "yugabyte-2021",
      "title": "Is My PostgreSQL Database Experiencing CPU, RAM, or I/O Pressure?",
      "url": "https://www.yugabyte.com/blog/identify-cpu-ram-io-pressure-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Is My PostgreSQL Database Experiencing CPU, RAM, or I/O Pressure?.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28484",
      "database": "YugabyteDB",
      "date": "2023-07-10",
      "employment_period": "yugabyte-2021",
      "title": "Is My PostgreSQL Database Experiencing CPU, RAM, or I/O Pressure?",
      "url": "https://www.yugabyte.com/blog/identify-cpu-ram-io-pressure-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Example Walk-Through Using YugabyteDB Let’s take an example using YugabyteDB, which is a PostgreSQL-compatible database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1506463",
      "database": "CockroachDB",
      "date": "2023-07-19",
      "employment_period": "yugabyte-2021",
      "title": "Understand what you run before publishing your (silly) benchmark results",
      "url": "https://dev.to/yugabyte/understand-what-you-run-before-publishing-your-silly-benchmark-results-48bb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Moreover, they compared the throughput of Citus on Azure (branded as Cosmos DB for PostgreSQL) with High Availability Off (*), to Distributed SQL databases, CockroachDB and YugabyteDB, with Replication Factor 3, resilient to zone failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1506463",
      "database": "PostgreSQL",
      "date": "2023-07-19",
      "employment_period": "yugabyte-2021",
      "title": "Understand what you run before publishing your (silly) benchmark results",
      "url": "https://dev.to/yugabyte/understand-what-you-run-before-publishing-your-silly-benchmark-results-48bb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "advantage",
        "efficient",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You don't have to learn something new and that's the advantage of PostgreSQL compatibility.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1506463",
      "database": "YugabyteDB",
      "date": "2023-07-19",
      "employment_period": "yugabyte-2021",
      "title": "Understand what you run before publishing your (silly) benchmark results",
      "url": "https://dev.to/yugabyte/understand-what-you-run-before-publishing-your-silly-benchmark-results-48bb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "fast",
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This may be ok because the parse time is fast (YugabyteDB caches the catalog tables in the local node) but, again, you need to know what you are measuring.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1546999",
      "database": "Amazon Aurora",
      "date": "2023-07-24",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Optimizer Hints Discussion",
      "url": "https://dev.to/aws-heroes/postgresql-optimizer-hints-discussion-1nnm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Many PostgreSQL-compatible databases install `pg_hint_plan` by default, like Amazon Aurora or YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1546999",
      "database": "Oracle Database",
      "date": "2023-07-24",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Optimizer Hints Discussion",
      "url": "https://dev.to/aws-heroes/postgresql-optimizer-hints-discussion-1nnm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "- _Poor application code maintainability: hints in queries require massive refactoring_ I would say the opposite: `pg_hint_plan` hints, like Oracle ones, provide a way to change the execution behavior without refactoring the SQL code.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1546999",
      "database": "PostgreSQL",
      "date": "2023-07-24",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Optimizer Hints Discussion",
      "url": "https://dev.to/aws-heroes/postgresql-optimizer-hints-discussion-1nnm",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "Because of the lack of hints in PostgreSQL, this was added in the WITH clause syntax, breaking the SQL semantic (which should declare the expected result and not the way to get it).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1546999",
      "database": "YugabyteDB",
      "date": "2023-07-24",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Optimizer Hints Discussion",
      "url": "https://dev.to/aws-heroes/postgresql-optimizer-hints-discussion-1nnm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Many PostgreSQL-compatible databases install `pg_hint_plan` by default, like Amazon Aurora or YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28671",
      "database": "Oracle Database",
      "date": "2023-07-24",
      "employment_period": "yugabyte-2021",
      "title": "The Complete Guide to Troubleshooting Oracle Connection Errors",
      "url": "https://www.yugabyte.com/blog/troubleshoot-oracle-connection-errors/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "JDBC OCI Driver, use: java TestJDBC \"my_user\" \"my_password\" \"jdbc:oracle:oci:@\" The result will be: Exception in thread \"main\" java.sql.SQLException: ORA-12162: TNS:net service name is incorrectly specified You already see that it can be useful to test with the Thin and the OCI driver: they don’t show the same messages.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:28671",
      "database": "YugabyteDB",
      "date": "2023-07-24",
      "employment_period": "yugabyte-2021",
      "title": "The Complete Guide to Troubleshooting Oracle Connection Errors",
      "url": "https://www.yugabyte.com/blog/troubleshoot-oracle-connection-errors/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is because with our database migration tool, YugabyteDB Voyager , they need to provide the connection information of the source Oracle database, using the parameters –source-db-user –source-db-password and –oracle-tns-alias.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1547798",
      "database": "PostgreSQL",
      "date": "2023-07-25",
      "employment_period": "yugabyte-2021",
      "title": "SQL for low code applications: SQLPage",
      "url": "https://dev.to/yugabyte/sql-for-low-code-applications-sqlpage-lmk",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Builds a low-code web page entirely from SQL using a small webserver's declarative components, connecting it to a YugabyteDB cluster through a standard PostgreSQL connection string.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1547798",
      "database": "YugabyteDB",
      "date": "2023-07-25",
      "employment_period": "yugabyte-2021",
      "title": "SQL for low code applications: SQLPage",
      "url": "https://dev.to/yugabyte/sql-for-low-code-applications-sqlpage-lmk",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Builds a low-code web page entirely from SQL using a small webserver's declarative components, connecting it to a YugabyteDB cluster through a standard PostgreSQL connection string.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1550685",
      "database": "YugabyteDB",
      "date": "2023-07-27",
      "employment_period": "yugabyte-2021",
      "title": "Another funny benchmark: \"hugedbbench\"",
      "url": "https://dev.to/yugabyte/another-funny-benchmark-hugedbbench-7b9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reruns a widely shared benchmark that implausibly claimed microsecond response times against a real single-node YugabyteDB container, checking the actual timings through statement statistics.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1551908",
      "database": "PostgreSQL",
      "date": "2023-07-28",
      "employment_period": "yugabyte-2021",
      "title": "FlameGraphs on Steroids with profiler.firefox.com",
      "url": "https://dev.to/yugabyte/flamegraphs-on-steroids-with-profilerfirefoxcom-203f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Captures a short profiling sample of PostgreSQL and YugabyteDB processes and loads it into a web-based flame graph viewer to spot CPU cost from a table created without a primary key.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1551908",
      "database": "YugabyteDB",
      "date": "2023-07-28",
      "employment_period": "yugabyte-2021",
      "title": "FlameGraphs on Steroids with profiler.firefox.com",
      "url": "https://dev.to/yugabyte/flamegraphs-on-steroids-with-profilerfirefoxcom-203f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Captures a short profiling sample of PostgreSQL and YugabyteDB processes and loads it into a web-based flame graph viewer to spot CPU cost from a table created without a primary key.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1561395",
      "database": "PostgreSQL",
      "date": "2023-08-07",
      "employment_period": "yugabyte-2021",
      "title": "pg-hostname on YugabyteDB compiled and installed directly on the server",
      "url": "https://dev.to/yugabyte/pg-hostname-on-yugabytedb-compiled-and-installed-directly-on-the-server-15id",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Second, if I start `yugabyted --advertise_address=0.0.0.0` to listen on all interfaces, I get no useful information: ```sql yugabyte=# select inet_server_addr(); inet_server_addr ------------------ 127.0.0.1 (1 row) yugabyte=# show listen_addresses ; listen_addresses ------------------ 0.0.0.0 (1 row) ``` ## Compile and install the extension on the YugabyteDB node In this series I show many way to build a PostgreSQL ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1561395",
      "database": "YugabyteDB",
      "date": "2023-08-07",
      "employment_period": "yugabyte-2021",
      "title": "pg-hostname on YugabyteDB compiled and installed directly on the server",
      "url": "https://dev.to/yugabyte/pg-hostname-on-yugabytedb-compiled-and-installed-directly-on-the-server-15id",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "`pg-hostname` is a very simple extension, useful, especially on YugabyteDB that runs on multiple nodes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1562676",
      "database": "YugabyteDB",
      "date": "2023-08-09",
      "employment_period": "yugabyte-2021",
      "title": "Counters with YugabyteDB",
      "url": "https://dev.to/yugabyte/in-memory-counters-with-yugabytedb-2p54",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Counters with YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1565625",
      "database": "YugabyteDB",
      "date": "2023-08-11",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB official Dockerfile",
      "url": "https://dev.to/yugabyte/yugabytedb-official-dockerfile-2k62",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB official Dockerfile.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1567427",
      "database": "Oracle Database",
      "date": "2023-08-14",
      "employment_period": "yugabyte-2021",
      "title": "Partitioning vs. Sharding - What about SQL Features?",
      "url": "https://dev.to/yugabyte/partitioning-vs-sharding-what-about-sql-features-4fl1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In Oracle Database, Declarative Partitioning is compatible with most SQL features, with global indexes to enforce unique constraints.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1567427",
      "database": "PostgreSQL",
      "date": "2023-08-14",
      "employment_period": "yugabyte-2021",
      "title": "Partitioning vs. Sharding - What about SQL Features?",
      "url": "https://dev.to/yugabyte/partitioning-vs-sharding-what-about-sql-features-4fl1",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "Moreover, these approaches lack the same level of elasticity (re-sharding often involves intricate procedures) and resilience (each shard corresponds to a distinct PostgreSQL database to protect) as found in true Distributed SQL architectures.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1567427",
      "database": "YugabyteDB",
      "date": "2023-08-14",
      "employment_period": "yugabyte-2021",
      "title": "Partitioning vs. Sharding - What about SQL Features?",
      "url": "https://dev.to/yugabyte/partitioning-vs-sharding-what-about-sql-features-4fl1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB encounters a similar constraint with SQL partitioning, inherited from PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1569417",
      "database": "PostgreSQL",
      "date": "2023-08-15",
      "employment_period": "yugabyte-2021",
      "title": "Citus is not ACID but Eventually Consistent",
      "url": "https://dev.to/yugabyte/citus-is-not-acid-but-eventually-consistent-3711",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Sets up a sharded PostgreSQL cluster behind a coordinator to prepare a pgbench demonstration of eventual rather than strict consistency, contrasted in a follow-up post against distributed SQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1569417",
      "database": "YugabyteDB",
      "date": "2023-08-15",
      "employment_period": "yugabyte-2021",
      "title": "Citus is not ACID but Eventually Consistent",
      "url": "https://dev.to/yugabyte/citus-is-not-acid-but-eventually-consistent-3711",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The good news is that you can run a managed YugabyteDB on Azure:",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1569542",
      "database": "PostgreSQL",
      "date": "2023-08-15",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB is Distributed SQL: resilient and consistent",
      "url": "https://dev.to/yugabyte/yugabytedb-is-distributed-sql-resilient-and-consistent-4llf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "robust"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It encompasses the entire spectrum of SQL features, with robust ACID properties and a commitment to **strong consistency** and can be used in place of PostgreSQL without changing the application code.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1569542",
      "database": "YugabyteDB",
      "date": "2023-08-15",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB is Distributed SQL: resilient and consistent",
      "url": "https://dev.to/yugabyte/yugabytedb-is-distributed-sql-resilient-and-consistent-4llf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is Distributed SQL: resilient and consistent.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1560303",
      "database": "PostgreSQL",
      "date": "2023-08-24",
      "employment_period": "yugabyte-2021",
      "title": "No-gap sequence in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/no-gap-sequence-in-postgresql-and-yugabytedb-3feo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This, with a serializable isolation level, will generate no-gap numbers: ```sql create table invoices ( primary key(year, num) , year int, num int ); insert into invoices select 2023, next_invoice_number(2023) from generate_series(1,10) returning num ; ``` The result: ```sql postgres=# select * from invoices order by num; year | num ------+----- 2023 | 1 2023 | 2 2023 | 3 2023 | 4 2023 | 5 2023 | 6 2023 | 7 2023 | 8 ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1560303",
      "database": "YugabyteDB",
      "date": "2023-08-24",
      "employment_period": "yugabyte-2021",
      "title": "No-gap sequence in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/no-gap-sequence-in-postgresql-and-yugabytedb-3feo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "good",
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "However, YugabyteDB is elastic and resilient by allowing nodes to be added or removed, which may also introduce a gap.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1579719",
      "database": "YugabyteDB",
      "date": "2023-08-25",
      "employment_period": "yugabyte-2021",
      "title": "pg_stat_activity from all servers in YugabyteDB",
      "url": "https://dev.to/yugabyte/query-pgstatactivity-from-all-servers-in-yugabytedb-20j8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For example: ```sql select now()-query_start \"start\",state, substr(query, 1, 30), gv$host, gv$zone, datname, application_name, usename, client_hostname from gv$pg_stat_activity where state is not null order by now()-query_start ; ``` !Image description I also added `pg_stat_databases` where not all columns are relevant to YugabyteDB, but the sum of commits and rollbacks per cloud region and zone can be interesting: `",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1584487",
      "database": "PostgreSQL",
      "date": "2023-08-30",
      "employment_period": "yugabyte-2021",
      "title": "PL/Python in YugabyteDB (build with yugabyte)",
      "url": "https://dev.to/yugabyte/plpython-on-yugabytedb-fok",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Documents a community-contributed build that patches PostgreSQL's Python procedural language source files to compile YugabyteDB from source with working Python 3.11 support.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1584487",
      "database": "YugabyteDB",
      "date": "2023-08-30",
      "employment_period": "yugabyte-2021",
      "title": "PL/Python in YugabyteDB (build with yugabyte)",
      "url": "https://dev.to/yugabyte/plpython-on-yugabytedb-fok",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PL/Python in YugabyteDB (build with yugabyte).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1587855",
      "database": "Amazon Aurora",
      "date": "2023-09-04",
      "employment_period": "yugabyte-2021",
      "title": "JSON as TEXT, JSON, or JSONB datatypes in YugabyteDB",
      "url": "https://dev.to/yugabyte/storing-json-as-text-json-or-jsonb-datatypes-in-yugabytedb-3764",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In Aurora, the GIN index access is fast with 4ms, without showing the same problem as YugabyteDB (6 seconds because of 'Index Recheck').",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1587855",
      "database": "MongoDB",
      "date": "2023-09-04",
      "employment_period": "yugabyte-2021",
      "title": "JSON as TEXT, JSON, or JSONB datatypes in YugabyteDB",
      "url": "https://dev.to/yugabyte/storing-json-as-text-json-or-jsonb-datatypes-in-yugabytedb-3764",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This year, JSON in PostgreSQL was a hot: FerretDB was sponsoring (They add a MongoDB API on top of PostgreSQL) and a great talk was about the right datatypes to store JSON in Postgres.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1587855",
      "database": "PostgreSQL",
      "date": "2023-09-04",
      "employment_period": "yugabyte-2021",
      "title": "JSON as TEXT, JSON, or JSONB datatypes in YugabyteDB",
      "url": "https://dev.to/yugabyte/storing-json-as-text-json-or-jsonb-datatypes-in-yugabytedb-3764",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "efficient",
        "faster",
        "great",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This year, JSON in PostgreSQL was a hot: FerretDB was sponsoring (They add a MongoDB API on top of PostgreSQL) and a great talk was about the right datatypes to store JSON in Postgres.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1587855",
      "database": "YugabyteDB",
      "date": "2023-09-04",
      "employment_period": "yugabyte-2021",
      "title": "JSON as TEXT, JSON, or JSONB datatypes in YugabyteDB",
      "url": "https://dev.to/yugabyte/storing-json-as-text-json-or-jsonb-datatypes-in-yugabytedb-3764",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "faster",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Query: Select All Now, let's execute the first query, which is `select_all`: ```sh ./pg_json_bench query select_all \\ text,json,jsonb,btree_idx_score,gin_idx,gin_idx_path ``` This query retrieves all documents: ```sql SELECT * FROM tbl_...; ``` In all scenarios, this results in a `Seq Scan` , and the execution time remains roughly consistent, with a minor overhead when reading from JSONB: !Image description If Yug",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:29245",
      "database": "Oracle Database",
      "date": "2023-09-06",
      "employment_period": "yugabyte-2021",
      "title": "Improving PostgreSQL: How to Overcome the Tough Challenges with YugabyteDB",
      "url": "https://www.yugabyte.com/blog/improve-postgresql/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explore how YugabyteDB’s new Connection Manager turns a key Postgres weakness into a strength>>> #6: Primary Key Index Takes Up A Lot of Space PostgreSQL stores rows in heap tables, just like Oracle, and the primary key is an additional secondary index.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:29245",
      "database": "PostgreSQL",
      "date": "2023-09-06",
      "employment_period": "yugabyte-2021",
      "title": "Improving PostgreSQL: How to Overcome the Tough Challenges with YugabyteDB",
      "url": "https://www.yugabyte.com/blog/improve-postgresql/",
      "source": "yugabyte",
      "evaluation": -1,
      "positive_weight": 3,
      "critical_weight": 4,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "possesses stated advantages",
        "resilient",
        "scalable"
      ],
      "critical_signals": [
        "incurs stated availability disadvantage",
        "inefficient",
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "YugabyteDB is a distributed SQL database that’s runtime compatible with PostgreSQL and designed with a cloud-native, resilient, and elastically scalable architecture.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:29245",
      "database": "YugabyteDB",
      "date": "2023-09-06",
      "employment_period": "yugabyte-2021",
      "title": "Improving PostgreSQL: How to Overcome the Tough Challenges with YugabyteDB",
      "url": "https://www.yugabyte.com/blog/improve-postgresql/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "efficient",
        "great",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "As a Developer Advocate at Yugabyte, I take great pleasure in helping others learn and share in this area.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1596405",
      "database": "Cassandra",
      "date": "2023-09-11",
      "employment_period": "yugabyte-2021",
      "title": "ACID properties explained to NoSQL vendors",
      "url": "https://www.linkedin.com/pulse/acid-properties-explained-nosql-vendors-franck-pachot",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "As it operates on the same transactional and distributed storage infrastructure, YugabyteDB also offers a Cassandra-like endpoint that supports transactions when updating multiple tables, including their secondary indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1596405",
      "database": "CockroachDB",
      "date": "2023-09-11",
      "employment_period": "yugabyte-2021",
      "title": "ACID properties explained to NoSQL vendors",
      "url": "https://www.linkedin.com/pulse/acid-properties-explained-nosql-vendors-franck-pachot",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "NoSQL databases vendors decided to impose many limitations to scale at a time when scaling out SQL was challenging (before Distributed SQL databases like Spanner, CockroachDB, TiDB, and YugabyteDB were available), and this limitation still exists today, even if a few NoSQL databases support some transactional operations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1596405",
      "database": "PostgreSQL",
      "date": "2023-09-11",
      "employment_period": "yugabyte-2021",
      "title": "ACID properties explained to NoSQL vendors",
      "url": "https://www.linkedin.com/pulse/acid-properties-explained-nosql-vendors-franck-pachot",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB offers a PostgreSQL-compatible endpoint across multiple nodes while seeing the same logical database with all SQL capabilities and ACID properties intact.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1596405",
      "database": "YugabyteDB",
      "date": "2023-09-11",
      "employment_period": "yugabyte-2021",
      "title": "ACID properties explained to NoSQL vendors",
      "url": "https://www.linkedin.com/pulse/acid-properties-explained-nosql-vendors-franck-pachot",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "NoSQL databases vendors decided to impose many limitations to scale at a time when scaling out SQL was challenging (before Distributed SQL databases like Spanner, CockroachDB, TiDB, and YugabyteDB were available), and this limitation still exists today, even if a few NoSQL databases support some transactional operations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1596710",
      "database": "PostgreSQL",
      "date": "2023-09-11",
      "employment_period": "yugabyte-2021",
      "title": "Postgres Join Methods in YugabyteDB",
      "url": "https://dev.to/yugabyte/postgresql-join-methods-in-yugabytedb-f02",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Nevertheless, it's worth noting that PostgreSQL's join methods are primarily designed for efficient access to table rows stored locally and in the single-node shared buffers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1596710",
      "database": "YugabyteDB",
      "date": "2023-09-11",
      "employment_period": "yugabyte-2021",
      "title": "Postgres Join Methods in YugabyteDB",
      "url": "https://dev.to/yugabyte/postgresql-join-methods-in-yugabytedb-f02",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Postgres Join Methods in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1589450",
      "database": "PostgreSQL",
      "date": "2023-09-15",
      "employment_period": "yugabyte-2021",
      "title": "The cost of additional secondary indexes in PostgreSQL & YugabyteDB",
      "url": "https://dev.to/yugabyte/the-cost-of-additional-secondary-indexes-in-postgresql-yugabytedb-4eeo",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 2,
      "mixed": true,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "### PostgreSQL non-unique indexes With such a small dataset, all rows fit into the shared buffers, which is where B-Tree indexes are efficient.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1589450",
      "database": "YugabyteDB",
      "date": "2023-09-15",
      "employment_period": "yugabyte-2021",
      "title": "The cost of additional secondary indexes in PostgreSQL & YugabyteDB",
      "url": "https://dev.to/yugabyte/the-cost-of-additional-secondary-indexes-in-postgresql-yugabytedb-4eeo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "advantage",
        "efficient",
        "faster",
        "possesses stated advantages",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I create the following table with `i` indexes (which I run in a `for i in {0..10}` loop): ```sql create table demo (n bigint); create index nonconcurrently on demo(n) \\watch count=$i ``` I use `nonconcurrently` to get it faster in YugabyteDB (the default is online creation with backfill but that's not needed when there are no concurrent sessions) I'll run this with non unique indexes, but also with unique indexes.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1601298",
      "database": "YugabyteDB",
      "date": "2023-09-15",
      "employment_period": "yugabyte-2021",
      "title": "Transaction Internals: Fast Path vs Multi-Shard",
      "url": "https://dev.to/yugabyte/transaction-internals-fast-path-vs-multi-shard-59bm",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Traces YugabyteDB's internal write path with debug logging, contrasting single-row fast-path writes, multi-statement transactional writes, and writes that also update a secondary index.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1602465",
      "database": "YugabyteDB",
      "date": "2023-09-18",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Cost-Based Optimizer and cost model for Distributed LSM-Tree",
      "url": "https://dev.to/yugabyte/yugabytedb-cost-based-optimizer-and-cost-model-for-distributed-lsm-tree-1hb4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Cost-Based Optimizer and cost model for Distributed LSM-Tree.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1607236",
      "database": "PostgreSQL",
      "date": "2023-09-21",
      "employment_period": "yugabyte-2021",
      "title": "Bitmap Scan in YugabyteDB",
      "url": "https://dev.to/yugabyte/bitmap-scan-in-yugabytedb-1id",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains that YugabyteDB achieved scalable multi-criteria conjunction queries differently than PostgreSQL's bitmap scan, by storing columns within the primary key and batching index lookups.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1607236",
      "database": "YugabyteDB",
      "date": "2023-09-21",
      "employment_period": "yugabyte-2021",
      "title": "Bitmap Scan in YugabyteDB",
      "url": "https://dev.to/yugabyte/bitmap-scan-in-yugabytedb-1id",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Explains that YugabyteDB achieved scalable multi-criteria conjunction queries differently than PostgreSQL's bitmap scan, by storing columns within the primary key and batching index lookups.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1610195",
      "database": "YugabyteDB",
      "date": "2023-09-24",
      "employment_period": "yugabyte-2021",
      "title": "Online Rolling Upgrade in YugabyteDB Managed",
      "url": "https://dev.to/yugabyte/online-rolling-upgrade-in-yugabytedb-managed-4l60",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Online Rolling Upgrade in YugabyteDB Managed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1618910",
      "database": "PostgreSQL",
      "date": "2023-10-03",
      "employment_period": "yugabyte-2021",
      "title": "PostGIS on YugabyteDB Alma8 (workarounds)",
      "url": "https://dev.to/yugabyte/postgis-on-yugabytedb-alma8-with-workaround-2okj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Attempts installing a spatial extension for PostgreSQL 11 into a YugabyteDB container, hitting a glibc version mismatch because the bundled runtime predates a required system library.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1618910",
      "database": "YugabyteDB",
      "date": "2023-10-03",
      "employment_period": "yugabyte-2021",
      "title": "PostGIS on YugabyteDB Alma8 (workarounds)",
      "url": "https://dev.to/yugabyte/postgis-on-yugabytedb-alma8-with-workaround-2okj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostGIS on YugabyteDB Alma8 (workarounds).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1619940",
      "database": "PostgreSQL",
      "date": "2023-10-03",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB in Jupyter Notebook in Google Colab",
      "url": "https://dev.to/yugabyte/yugabytedb-in-jupyter-notebook-in-google-colab-18pb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "./yugabyte/bin/yugabyted start --advertise_address=$PGHOST --ysql_port=$PGPORT & \\ echo \"Starting in the background because it seems iPython doesn't detect when done...\" ``` Here is the cell I use to wait for the PostgreSQL enpoint to be available: ```sh # Wait that the PostgreSQL compatible endpoint accepts connections (PGHOST and PGPORT are set) !",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1619940",
      "database": "YugabyteDB",
      "date": "2023-10-03",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB in Jupyter Notebook in Google Colab",
      "url": "https://dev.to/yugabyte/yugabytedb-in-jupyter-notebook-in-google-colab-18pb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB in Jupyter Notebook in Google Colab.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1627242",
      "database": "PostgreSQL",
      "date": "2023-10-08",
      "employment_period": "yugabyte-2021",
      "title": "Scalable range sharding to avoid hotspots on indexes",
      "url": "https://dev.to/yugabyte/scalable-range-sharding-with-yugabytedb-1o51",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "benefit",
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## To summarize YugabyteDB provides all building blocks for scalable reads and writes, to optimize the infinity of use-cases that can run on an SQL database: - the necessary optimizations in the DocDB distributed storage to avoid too many remote calls, like the skip scan and distinct pushdowns - all PostgreSQL features in the YSQL query layer to build efficient queries on top of the distributed transactions, like the",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1627242",
      "database": "YugabyteDB",
      "date": "2023-10-08",
      "employment_period": "yugabyte-2021",
      "title": "Scalable range sharding to avoid hotspots on indexes",
      "url": "https://dev.to/yugabyte/scalable-range-sharding-with-yugabytedb-1o51",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## To summarize YugabyteDB provides all building blocks for scalable reads and writes, to optimize the infinity of use-cases that can run on an SQL database: - the necessary optimizations in the DocDB distributed storage to avoid too many remote calls, like the skip scan and distinct pushdowns - all PostgreSQL features in the YSQL query layer to build efficient queries on top of the distributed transactions, like the",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1640527",
      "database": "PostgreSQL",
      "date": "2023-10-22",
      "employment_period": "yugabyte-2021",
      "title": "Fast SELECT COUNT(*) WHERE in YugabyteDB",
      "url": "https://dev.to/yugabyte/fast-select-count-in-yugabytedb-464h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In addition to `Remote Filter` or `Index Cond` you should check that the aggregation is pushed down (`Partial Aggregate: true`) to avoid sending lot of rows to the PostgreSQL backend you are connected to.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1640527",
      "database": "YugabyteDB",
      "date": "2023-10-22",
      "employment_period": "yugabyte-2021",
      "title": "Fast SELECT COUNT(*) WHERE in YugabyteDB",
      "url": "https://dev.to/yugabyte/fast-select-count-in-yugabytedb-464h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Fast SELECT COUNT(*) WHERE in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1644969",
      "database": "Cassandra",
      "date": "2023-10-24",
      "employment_period": "yugabyte-2021",
      "title": "TTL in YugabyteDB with batched deletes",
      "url": "https://dev.to/yugabyte/ttl-in-yugabytedb-with-batched-deletes-33n5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Implements a time-to-live purge for a pgbench history table by generating hundreds of range-bounded delete statements keyed on a hash function, since native TTL only exists in the Cassandra-style API.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1644969",
      "database": "Oracle Database",
      "date": "2023-10-24",
      "employment_period": "yugabyte-2021",
      "title": "TTL in YugabyteDB with batched deletes",
      "url": "https://dev.to/yugabyte/ttl-in-yugabytedb-with-batched-deletes-33n5",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "If you come from other databases, like Oracle, you may think that a delete is the most expensive operation.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1644969",
      "database": "PostgreSQL",
      "date": "2023-10-24",
      "employment_period": "yugabyte-2021",
      "title": "TTL in YugabyteDB with batched deletes",
      "url": "https://dev.to/yugabyte/ttl-in-yugabytedb-with-batched-deletes-33n5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL is more efficient as a deletes simply marks `xmax` but the space taken by the row and all index entries needs VACUUM to be reclaimed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1644969",
      "database": "YugabyteDB",
      "date": "2023-10-24",
      "employment_period": "yugabyte-2021",
      "title": "TTL in YugabyteDB with batched deletes",
      "url": "https://dev.to/yugabyte/ttl-in-yugabytedb-with-batched-deletes-33n5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "TTL in YugabyteDB with batched deletes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1645653",
      "database": "PostgreSQL",
      "date": "2023-10-25",
      "employment_period": "yugabyte-2021",
      "title": "Inner Inverted Join in YugabyteDB & PostgreSQL",
      "url": "https://dev.to/yugabyte/inner-inverted-join-in-yugabytedb-postgresql-g22",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In YugabyteDB, we have the same Join Methods as PostgreSQL, that are found in all SQL databases: - **Nested Loop** when the inner table has a fast access path with the join key, typically an index - **Merge Join** when the outer and inner tables are both sorted on the join key - **Hash Join**, which accesses the inner table by reading it into a hash table The query planner chooses those methods.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1645653",
      "database": "YugabyteDB",
      "date": "2023-10-25",
      "employment_period": "yugabyte-2021",
      "title": "Inner Inverted Join in YugabyteDB & PostgreSQL",
      "url": "https://dev.to/yugabyte/inner-inverted-join-in-yugabytedb-postgresql-g22",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Inner Inverted Join in YugabyteDB & PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1649255",
      "database": "CockroachDB",
      "date": "2023-10-29",
      "employment_period": "yugabyte-2021",
      "title": "Can writes be blocked by reads in YugabyteDB?",
      "url": "https://dev.to/yugabyte/can-writes-be-blocked-by-reads-in-yugabytedb-51j0",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "limitation",
        "named source of disadvantages"
      ],
      "evidence_excerpt": "One limitation of CockroachDB is that it only supports one isolation level, Serializable, with readers blocking writes.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1649255",
      "database": "PostgreSQL",
      "date": "2023-10-29",
      "employment_period": "yugabyte-2021",
      "title": "Can writes be blocked by reads in YugabyteDB?",
      "url": "https://dev.to/yugabyte/can-writes-be-blocked-by-reads-in-yugabytedb-51j0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In contrast, YugabyteDB supports all SQL isolation levels because it is PostgreSQL-compatible, and most SQL applications are built for Read Committed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1649255",
      "database": "YugabyteDB",
      "date": "2023-10-29",
      "employment_period": "yugabyte-2021",
      "title": "Can writes be blocked by reads in YugabyteDB?",
      "url": "https://dev.to/yugabyte/can-writes-be-blocked-by-reads-in-yugabytedb-51j0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Can writes be blocked by reads in YugabyteDB?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1651359",
      "database": "YugabyteDB",
      "date": "2023-10-30",
      "employment_period": "yugabyte-2021",
      "title": "Docker Image for YugabyteDB Developers",
      "url": "https://dev.to/yugabyte/docker-image-for-yugabytedb-developers-3ln7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The good news is that, for YugabyteDB, this is not a major issue, as the largest files are immutable SST files that do not change.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1656356",
      "database": "YugabyteDB",
      "date": "2023-11-04",
      "employment_period": "yugabyte-2021",
      "title": "Foreign Key validation in YugabyteDB when created in NOT VALID",
      "url": "https://dev.to/yugabyte/foreign-key-validation-in-yugabytedb-when-created-in-not-valid-58mi",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For YugabyteDB, there is an additional optimization to take advantage of the Distinct Pushdown.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1657130",
      "database": "YugabyteDB",
      "date": "2023-11-04",
      "employment_period": "yugabyte-2021",
      "title": "@DynamicUpdate with column-level locking in YugabyteDB and how to avoid write skew anomalies",
      "url": "https://dev.to/yugabyte/dynamicupdate-with-column-level-locking-in-yugabytedb-and-how-to-avoid-write-skew-anomalies-379j",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In contrast, YugabyteDB storage is more efficient as it only writes the updated column values and updates only the indexes on the updated columns.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1641483",
      "database": "YugabyteDB",
      "date": "2023-11-06",
      "employment_period": "yugabyte-2021",
      "title": "Is co-partition or interleave necessary in Distributed SQL?",
      "url": "https://dev.to/yugabyte/is-co-partition-or-interleave-necessary-in-distributed-sql-28g7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In this blog post, I will provide insights into how cross-node joins perform and scale in YugabyteDB, using a simple test case as an example.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1660309",
      "database": "PostgreSQL",
      "date": "2023-11-08",
      "employment_period": "yugabyte-2021",
      "title": "Dirty Writes, INSERT ... ON CONFLICT DO UPDATE, Read Committed Isolation Level and Lost Update",
      "url": "https://dev.to/yugabyte/dirty-writes-insert-on-conflict-do-update-read-committed-isolation-level-and-lost-update-13hk",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "However, PostgreSQL does not use implicit savepoints, as they are quite expensive and cannot transparently rollback and restart the statement execution.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1660309",
      "database": "YugabyteDB",
      "date": "2023-11-08",
      "employment_period": "yugabyte-2021",
      "title": "Dirty Writes, INSERT ... ON CONFLICT DO UPDATE, Read Committed Isolation Level and Lost Update",
      "url": "https://dev.to/yugabyte/dirty-writes-insert-on-conflict-do-update-read-committed-isolation-level-and-lost-update-13hk",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Or a better choice is to try to put all the logic into a single SQL statement (leveraging WITH clauses and RETURNING updates) that YugabyteDB can restart transparently, and have no dependencies between statements in a transaction.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:s7ize",
      "database": "Cassandra",
      "date": "2023-11-09",
      "employment_period": "yugabyte-2021",
      "title": "Monolithic vs. Distributed SQL databases",
      "url": "https://www.linkedin.com/pulse/monolithic-vs-distributed-sql-franck-pachot-s7ize",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB has multiple query layers, YSQL (the PostgreSQL-compatible API) and YCQL (the Cassandra-like API), which can communicate with the storage layer, DocDB, locally or remotely.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:s7ize",
      "database": "PostgreSQL",
      "date": "2023-11-09",
      "employment_period": "yugabyte-2021",
      "title": "Monolithic vs. Distributed SQL databases",
      "url": "https://www.linkedin.com/pulse/monolithic-vs-distributed-sql-franck-pachot-s7ize",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB has multiple query layers, YSQL (the PostgreSQL-compatible API) and YCQL (the Cassandra-like API), which can communicate with the storage layer, DocDB, locally or remotely.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:s7ize",
      "database": "YugabyteDB",
      "date": "2023-11-09",
      "employment_period": "yugabyte-2021",
      "title": "Monolithic vs. Distributed SQL databases",
      "url": "https://www.linkedin.com/pulse/monolithic-vs-distributed-sql-franck-pachot-s7ize",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB has multiple query layers, YSQL (the PostgreSQL-compatible API) and YCQL (the Cassandra-like API), which can communicate with the storage layer, DocDB, locally or remotely.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1665302",
      "database": "PostgreSQL",
      "date": "2023-11-13",
      "employment_period": "yugabyte-2021",
      "title": "IN() list filter with Top-N",
      "url": "https://dev.to/yugabyte/in-list-filter-with-top-n-3m9l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "--- This blog post is inspired by a typical pattern seen with Ruby on Rails Active Record and other ORMs, as demonstrated by Benoit Tigeot's test case: You should read the comments, and Peter Geoghegan's patch to enhance ScalarArrayOp and bring Dynamic Scan to PostgreSQL, as well as this Twitter thread.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1665302",
      "database": "YugabyteDB",
      "date": "2023-11-13",
      "employment_period": "yugabyte-2021",
      "title": "IN() list filter with Top-N",
      "url": "https://dev.to/yugabyte/in-list-filter-with-top-n-3m9l",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "This is why YugabyteDB's response time is slower compared to that of PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1669917",
      "database": "YugabyteDB",
      "date": "2023-11-18",
      "employment_period": "yugabyte-2021",
      "title": "Row Level Security with an ARRAY of tenants set in session parameter (RLS)",
      "url": "https://dev.to/yugabyte/postgresql-row-level-security-with-an-array-of-tenants-2136",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "advantage",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In particular, YugabyteDB has the advantage of using only a single Index Only Scan to seek and read the next rows within the five ranges, similar to a loose index scan (thanks to Hybrid Scan).",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1672863",
      "database": "Oracle Database",
      "date": "2023-11-23",
      "employment_period": "yugabyte-2021",
      "title": "Oracle Cloud Infrastructure Optimized PostgreSQL 14.9",
      "url": "https://dev.to/franckpachot/oracle-cloud-infrastructure-optimized-postgresql-149-2724",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Cloud Infrastructure Optimized PostgreSQL 14.9.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1672863",
      "database": "PostgreSQL",
      "date": "2023-11-23",
      "employment_period": "yugabyte-2021",
      "title": "Oracle Cloud Infrastructure Optimized PostgreSQL 14.9",
      "url": "https://dev.to/franckpachot/oracle-cloud-infrastructure-optimized-postgresql-149-2724",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I add it in my SSH `config` file, in `.ssh` for fast access and will include port forwarding when I'll have the PostgreSQL endpoint.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1676067",
      "database": "PostgreSQL",
      "date": "2023-11-24",
      "employment_period": "yugabyte-2021",
      "title": "YBIO on OCI PostgreSQL",
      "url": "https://dev.to/franckpachot/ybio-on-oci-postgresql-cgc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YBIO on OCI PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1678023",
      "database": "PostgreSQL",
      "date": "2023-11-27",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL double buffering: understand the cache size in a managed service (OCI)",
      "url": "https://dev.to/franckpachot/postgresql-double-buffering-understand-the-cache-size-in-a-managed-service-oci-2oci",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "While adding more and more rows to the table, I see more and more reads, visible from the instance metrics with a decreasing Buffer Cache Hit Ratio: !Image description Even if those are seen as \"reads\" from PostgreSQL, the OS doesn't see any reads until the table reaches 48GB: !Image description !Image description Even if those reads from the filesystem cache also comes from RAM, they are slower and the scan decrease",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1680633",
      "database": "PostgreSQL",
      "date": "2023-11-28",
      "employment_period": "yugabyte-2021",
      "title": "What about temporary tables in OCI PostgreSQL?",
      "url": "https://dev.to/franckpachot/what-about-temporary-tables-in-oci-postgresql-2ghp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "What about temporary tables in OCI PostgreSQL?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1683411",
      "database": "Amazon Aurora",
      "date": "2023-12-01",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL at AWS re:Invent",
      "url": "https://dev.to/aws-heroes/postgresql-at-aws-reinvent-378i",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "However, I was able to attend the excellent live coding session **DAT413-R | Using LangChain to build gen AI apps with Amazon Aurora and pgvector**: !Image description Similarity search in SQL databases has become popular but also brings some unusual behavior that users must be aware of, like the result being different when using an index or not.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1683411",
      "database": "PostgreSQL",
      "date": "2023-12-01",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL at AWS re:Invent",
      "url": "https://dev.to/aws-heroes/postgresql-at-aws-reinvent-378i",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 16,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Finally, **DAT344-NEW | [NEW LAUNCH] Achieving scale with Amazon Aurora Limitless Database** was a great example of PostgreSQL popularity.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675479",
      "database": "Oracle Database",
      "date": "2023-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part IV: Serializable",
      "url": "https://dev.to/franckpachot/isolation-levels-part-iv-serializable-flp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains that Oracle never implemented true serializable isolation despite the parameter name, while PostgreSQL's serializable snapshot isolation can still produce false-positive conflict errors.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675479",
      "database": "PostgreSQL",
      "date": "2023-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part IV: Serializable",
      "url": "https://dev.to/franckpachot/isolation-levels-part-iv-serializable-flp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains that Oracle never implemented true serializable isolation despite the parameter name, while PostgreSQL's serializable snapshot isolation can still produce false-positive conflict errors.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1680145",
      "database": "Amazon Aurora",
      "date": "2023-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Amazon Aurora PostgreSQL shared buffers and cache",
      "url": "https://dev.to/aws-heroes/amazon-aurora-and-postgresql-buffer-cache-n67",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "It reads a table multiple times, and Aurora I/O can be extremely expensive.** --- In a previous post I investigated buffer caching in Oracle Cloud PostgreSQL managed service.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1680145",
      "database": "Oracle Database",
      "date": "2023-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Amazon Aurora PostgreSQL shared buffers and cache",
      "url": "https://dev.to/aws-heroes/amazon-aurora-and-postgresql-buffer-cache-n67",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "It reads a table multiple times, and Aurora I/O can be extremely expensive.** --- In a previous post I investigated buffer caching in Oracle Cloud PostgreSQL managed service.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1680145",
      "database": "PostgreSQL",
      "date": "2023-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Amazon Aurora PostgreSQL shared buffers and cache",
      "url": "https://dev.to/aws-heroes/amazon-aurora-and-postgresql-buffer-cache-n67",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora PostgreSQL shared buffers and cache.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675482",
      "database": "PostgreSQL",
      "date": "2023-12-04",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part V: Read Only",
      "url": "https://dev.to/franckpachot/isolation-levels-part-v-read-only-323h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "If you are using **YugabyteDB**, which is distributed PostgreSQL, it is recommended to use `serializable read only deferrable` for reporting on OLTP databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675482",
      "database": "YugabyteDB",
      "date": "2023-12-04",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part V: Read Only",
      "url": "https://dev.to/franckpachot/isolation-levels-part-v-read-only-323h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "With Distributed SQL databases like YugabyteDB, you can optimize the efficiency of querying by reading from the **Raft followers** if they are closer and provide a lower latency than reading from the Raft leader.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675483",
      "database": "Oracle Database",
      "date": "2023-12-05",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part VI: Snapshot Isolation",
      "url": "https://dev.to/franckpachot/isolation-levels-part-vi-snapshot-isolation-15k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses a two-managers-awarding-one-bonus-per-team example to illustrate write skew under snapshot isolation, noting Oracle's serializable setting actually only provides this weaker level.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1689438",
      "database": "YugabyteDB",
      "date": "2023-12-06",
      "employment_period": "yugabyte-2021",
      "title": "Docker container with fixed IP address",
      "url": "https://dev.to/yugabyte/docker-container-with-fixed-ip-address-58cp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "When starting a YugabyteDB cluster, you provide network and host names, but the nodes identify themselves by their IP addresses.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1689768",
      "database": "YugabyteDB",
      "date": "2023-12-06",
      "employment_period": "yugabyte-2021",
      "title": "Batched Nested Loop for Join With Large Pagination",
      "url": "https://dev.to/yugabyte/batched-nested-loop-for-join-with-pagination-621",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "To solve this issue, with YugabyteDB, you can use Batched Nested Loops.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1691860",
      "database": "PostgreSQL",
      "date": "2023-12-08",
      "employment_period": "yugabyte-2021",
      "title": "The Most Annoying Optimizer Fail in Postgres ✅ Best index solved it.",
      "url": "https://dev.to/aws-heroes/the-most-annoying-optimizer-fail-in-postgres-solved-469b",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "This blog post is based on a question asked on the PostgreSQL Slack channel (you can join via this invite link: The question was related to a bad index chosen by the query planner.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1691317",
      "database": "YugabyteDB",
      "date": "2023-12-09",
      "employment_period": "yugabyte-2021",
      "title": "Pagination with an OFFSET is better without OFFSET",
      "url": "https://dev.to/franckpachot/pagination-with-an-offset-is-better-without-offset-5fah",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Extends a batched pagination example to show that adding an offset for the next page forces YugabyteDB to re-read and discard the first page's rows instead of resuming efficiently.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1693129",
      "database": "PostgreSQL",
      "date": "2023-12-09",
      "employment_period": "yugabyte-2021",
      "title": "Extended Statistics and pg_hint_plan /*+ Rows() */",
      "url": "https://dev.to/yugabyte/extended-statistics-and-pghintplan-rows--j4k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The syntax exists but is not implemented (I'm running this in PostgreSQL 16): ```sql postgres=# create statistics x (ndistinct) on state_code , country_code from countries join cities using(country_id); ERROR: 0A000: only a single relation is allowed in CREATE STATISTICS LOCATION: ProcessUtilitySlow, utility.c:1885 Time: 0.781 ms ``` When the correlation is between two joined tables, we need something else and this i",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675486",
      "database": "Oracle Database",
      "date": "2023-12-10",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part IX: Read Committed",
      "url": "https://dev.to/franckpachot/isolation-levels-part-ix-read-committed-3lll",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares read committed implementations across databases, noting Oracle lacks a share-locking select while PostgreSQL and YugabyteDB support shared and exclusive row locks with transparent restart.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675486",
      "database": "PostgreSQL",
      "date": "2023-12-10",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part IX: Read Committed",
      "url": "https://dev.to/franckpachot/isolation-levels-part-ix-read-committed-3lll",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares read committed implementations across databases, noting Oracle lacks a share-locking select while PostgreSQL and YugabyteDB support shared and exclusive row locks with transparent restart.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675486",
      "database": "YugabyteDB",
      "date": "2023-12-10",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part IX: Read Committed",
      "url": "https://dev.to/franckpachot/isolation-levels-part-ix-read-committed-3lll",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better",
        "efficient",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "On the other hand, **PostgreSQL** and **YugabyteDB** provide shared and exclusive row locks, which enable more efficient data access and better concurrency control.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1694098",
      "database": "PostgreSQL",
      "date": "2023-12-11",
      "employment_period": "yugabyte-2021",
      "title": "Even a Better Index 🍃 for The Most Annoying Postgres Optimizer Fail",
      "url": "https://dev.to/yugabyte/even-a-better-index-for-the-most-annoying-postgres-optimizer-fail-2ccg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Even a Better Index 🍃 for The Most Annoying Postgres Optimizer Fail.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1694098",
      "database": "YugabyteDB",
      "date": "2023-12-11",
      "employment_period": "yugabyte-2021",
      "title": "Even a Better Index 🍃 for The Most Annoying Postgres Optimizer Fail",
      "url": "https://dev.to/yugabyte/even-a-better-index-for-the-most-annoying-postgres-optimizer-fail-2ccg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## One Range Scan with Partial Index PostgreSQL and YugabyteDB offer a possibility to filter on this `IN()` condition with a partial index: ```sql yugabyte=# drop index demo_seq_status_id; DROP INDEX yugabyte=# create index demo_seq_id_status123 on demo (seq, id ASC) where status in (1,2,3) ; CREATE INDEX ``` With such index there is no need to rewrite the original query.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1696053",
      "database": "YugabyteDB",
      "date": "2023-12-12",
      "employment_period": "yugabyte-2021",
      "title": "ON CONFLICT DO NOTHING in YugabyteDB",
      "url": "https://dev.to/yugabyte/on-conflict-do-nothing-in-yugabytedb-991",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "ON CONFLICT DO NOTHING in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675487",
      "database": "YugabyteDB",
      "date": "2023-12-13",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part X: Non-Transactional Writes",
      "url": "https://dev.to/yugabyte/isolation-levels-part-x-non-transactional-writes-1497",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Describes a session setting that skips the atomic-visibility step for bulk loads in YugabyteDB, comparing it to how Oracle and PostgreSQL already treat sequence updates as non-transactional.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675488",
      "database": "PostgreSQL",
      "date": "2023-12-13",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XI: Read Uncommitted",
      "url": "https://dev.to/franckpachot/isolation-levels-part-xi-read-uncommitted-36fi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains why read uncommitted exists only for SQL standard compatibility in non-MVCC databases, since PostgreSQL and YugabyteDB silently treat it exactly the same as read committed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675488",
      "database": "YugabyteDB",
      "date": "2023-12-13",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XI: Read Uncommitted",
      "url": "https://dev.to/franckpachot/isolation-levels-part-xi-read-uncommitted-36fi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains why read uncommitted exists only for SQL standard compatibility in non-MVCC databases, since PostgreSQL and YugabyteDB silently treat it exactly the same as read committed.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:gjzne",
      "database": "PostgreSQL",
      "date": "2023-12-17",
      "employment_period": "yugabyte-2021",
      "title": "Distributed PostgreSQL without Sharding constraint for SQL joins",
      "url": "https://www.linkedin.com/pulse/distributed-postgresql-without-sharding-constraint-sql-franck-pachot-gjzne",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Being a fork rather than an extension, YugabyteDB can improve any part of the PostgreSQL code to make it scalable when distributed.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:gjzne",
      "database": "YugabyteDB",
      "date": "2023-12-17",
      "employment_period": "yugabyte-2021",
      "title": "Distributed PostgreSQL without Sharding constraint for SQL joins",
      "url": "https://www.linkedin.com/pulse/distributed-postgresql-without-sharding-constraint-sql-franck-pachot-gjzne",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Yugabyte allows colocation, used for small lookup tables or in multi-tenancy, but for the large tables that grow, better distribute them across the cluster.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675489",
      "database": "Oracle Database",
      "date": "2023-12-18",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XII: To go further",
      "url": "https://dev.to/franckpachot/isolation-levels-part-xii-to-go-further-n89",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For instance, some people like to make jokes about Oracle, but the lack of true Serializable doesn't affect the consistency of existing applications in any way.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675489",
      "database": "PostgreSQL",
      "date": "2023-12-18",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XII: To go further",
      "url": "https://dev.to/franckpachot/isolation-levels-part-xii-to-go-further-n89",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I had put many details in this old presentation: [Indexing Foreign Keys in Oracle] ( --- YugabyteDB has one of the most extensive implementations available, with all levels like PostgreSQL, but additionally solves the Read Committed inconsistency with statement restarts like Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1675489",
      "database": "YugabyteDB",
      "date": "2023-12-18",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XII: To go further",
      "url": "https://dev.to/franckpachot/isolation-levels-part-xii-to-go-further-n89",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I had put many details in this old presentation: [Indexing Foreign Keys in Oracle] ( --- YugabyteDB has one of the most extensive implementations available, with all levels like PostgreSQL, but additionally solves the Read Committed inconsistency with statement restarts like Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1702816",
      "database": "Oracle Database",
      "date": "2023-12-19",
      "employment_period": "yugabyte-2021",
      "title": "Single-statement deadlock in Oracle and ORA-00060",
      "url": "https://dev.to/franckpachot/single-statements-deadlocks-in-oracle-and-ora-00060-376m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Single-statement deadlock in Oracle and ORA-00060.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1705699",
      "database": "Amazon Aurora",
      "date": "2023-12-23",
      "employment_period": "yugabyte-2021",
      "title": "Could Batched Nested Loop improve PostgreSQL like it does for YugabyteDB?",
      "url": "https://dev.to/yugabyte/could-batched-nested-loop-improve-postgresql-like-it-does-for-yugabytedb-4bjb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB enables scalable distributed joins, which is an advantage over sharded databases like Citus or Aurora Limitless that require co-locating joined shards.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1705699",
      "database": "Oracle Database",
      "date": "2023-12-23",
      "employment_period": "yugabyte-2021",
      "title": "Could Batched Nested Loop improve PostgreSQL like it does for YugabyteDB?",
      "url": "https://dev.to/yugabyte/could-batched-nested-loop-improve-postgresql-like-it-does-for-yugabytedb-4bjb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle has `TABLE ACCESS BY INDEX ROWID BATCHED` to accomplish this, but this does not have all the advantages because it will not preserve the row ordering from the outer table, similar to PostgreSQL Bitmap Heap Scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1705699",
      "database": "PostgreSQL",
      "date": "2023-12-23",
      "employment_period": "yugabyte-2021",
      "title": "Could Batched Nested Loop improve PostgreSQL like it does for YugabyteDB?",
      "url": "https://dev.to/yugabyte/could-batched-nested-loop-improve-postgresql-like-it-does-for-yugabytedb-4bjb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "faster side of comparison",
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Someone asked me if this feature would be useful for PostgreSQL.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1705699",
      "database": "YugabyteDB",
      "date": "2023-12-23",
      "employment_period": "yugabyte-2021",
      "title": "Could Batched Nested Loop improve PostgreSQL like it does for YugabyteDB?",
      "url": "https://dev.to/yugabyte/could-batched-nested-loop-improve-postgresql-like-it-does-for-yugabytedb-4bjb",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "advantage",
        "excellent",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Batching the nested loop join has a significant advantage in YugabyteDB as it reduces the number of remote calls, making joins scalable.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1708062",
      "database": "YugabyteDB",
      "date": "2024-01-01",
      "employment_period": "yugabyte-2021",
      "title": "pg_hint_plan for Batched Nested Loop Join in YugabyteDB",
      "url": "https://dev.to/yugabyte/pghintplan-for-batched-nested-loop-join-in-yugabytedb-4pfo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "pg_hint_plan for Batched Nested Loop Join in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1716801",
      "database": "Oracle Database",
      "date": "2024-01-05",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XIII: Explicit Locking with SELECT (FOR UPDATE) intention",
      "url": "https://dev.to/yugabyte/isolation-levels-part-xiii-explicit-locking-with-select-for-update-intention-4na3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle implemented Multi-Version Concurrency Control later by storing a before image (later called rollback segments) to avoid reads blocking writes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1716801",
      "database": "PostgreSQL",
      "date": "2024-01-05",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XIII: Explicit Locking with SELECT (FOR UPDATE) intention",
      "url": "https://dev.to/yugabyte/isolation-levels-part-xiii-explicit-locking-with-select-for-update-intention-4na3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB behaves like PostgreSQL but with a scalable implementation (the list of locking transactions is in the key-value datastore, not limited by in-block storage).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1716801",
      "database": "YugabyteDB",
      "date": "2024-01-05",
      "employment_period": "yugabyte-2021",
      "title": "Isolation Levels - part XIII: Explicit Locking with SELECT (FOR UPDATE) intention",
      "url": "https://dev.to/yugabyte/isolation-levels-part-xiii-explicit-locking-with-select-for-update-intention-4na3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB behaves like PostgreSQL but with a scalable implementation (the list of locking transactions is in the key-value datastore, not limited by in-block storage).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1721367",
      "database": "PostgreSQL",
      "date": "2024-01-08",
      "employment_period": "yugabyte-2021",
      "title": "UPSERT all columns in YugabyteDB (ON CONFLICT DO UPDATE)",
      "url": "https://dev.to/yugabyte/upsert-all-columns-in-yugabytedb-on-conflict-do-update-4dpd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "That's the main advantage of using a the standard SQL WITH clause rather than the PostgreSQL specific ON CONFLICT: more control on how the new values are merged with the existing rows.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1721367",
      "database": "YugabyteDB",
      "date": "2024-01-08",
      "employment_period": "yugabyte-2021",
      "title": "UPSERT all columns in YugabyteDB (ON CONFLICT DO UPDATE)",
      "url": "https://dev.to/yugabyte/upsert-all-columns-in-yugabytedb-on-conflict-do-update-4dpd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Shows that upserting every column in YugabyteDB is faster as a delete-then-reinsert than a full update, because insert packs one storage entry per row while update writes one per column.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1722598",
      "database": "PostgreSQL",
      "date": "2024-01-09",
      "employment_period": "yugabyte-2021",
      "title": "Batched Nested Loop and Unbatchable Conditions",
      "url": "https://dev.to/yugabyte/batched-nested-loop-and-unbatchable-conditions-10n5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Using the same Nested Loop as in PostgreSQL will result in a remote read for each outer row, which may negate the benefits of this optimization.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1722598",
      "database": "YugabyteDB",
      "date": "2024-01-09",
      "employment_period": "yugabyte-2021",
      "title": "Batched Nested Loop and Unbatchable Conditions",
      "url": "https://dev.to/yugabyte/batched-nested-loop-and-unbatchable-conditions-10n5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains how YugabyteDB's batched nested loop pushes a join condition down as an array of outer values, combining multiple columns with a row constructor for composite-key joins.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:4fr7e",
      "database": "CockroachDB",
      "date": "2024-01-09",
      "employment_period": "yugabyte-2021",
      "title": "\"Distributed Things\" PostgreSQL",
      "url": "https://www.linkedin.com/pulse/distributed-things-postgresql-franck-pachot-4fr7e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Furthermore, the testers had to use fewer cores on CockroachDB and YugabyteDB to match Microsoft's marketing goal.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:4fr7e",
      "database": "PostgreSQL",
      "date": "2024-01-09",
      "employment_period": "yugabyte-2021",
      "title": "\"Distributed Things\" PostgreSQL",
      "url": "https://www.linkedin.com/pulse/distributed-things-postgresql-franck-pachot-4fr7e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "\"Distributed Things\" PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:4fr7e",
      "database": "YugabyteDB",
      "date": "2024-01-09",
      "employment_period": "yugabyte-2021",
      "title": "\"Distributed Things\" PostgreSQL",
      "url": "https://www.linkedin.com/pulse/distributed-things-postgresql-franck-pachot-4fr7e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here are more details about how YugabyteDB maintained high performance while scaling out transparently and elastically: In the case of YugabyteDB, here is how we avoid \"excessive number\" of networks h...",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1676787",
      "database": "YugabyteDB",
      "date": "2024-01-15",
      "employment_period": "yugabyte-2021",
      "title": "Covering Index nuances: which columns to cover (WHERE, ORDER BY, LIMIT, SELECT)?",
      "url": "https://www.linkedin.com/article/edit/7152619385403113472/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is particularly useful in Distributed SQL databases, such as **YugabyteDB**, where additional reads may result in network latency.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1732840",
      "database": "YugabyteDB",
      "date": "2024-01-18",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB avoids bloat with the outbox pattern",
      "url": "https://dev.to/yugabyte/how-yugabytedb-avoids-bloat-in-outbox-pattern-42lb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It provides fast ingest and limits the space and read amplification with compaction (YugabyteDB uses only level 0 with tiered compaction).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1743161",
      "database": "PostgreSQL",
      "date": "2024-01-27",
      "employment_period": "yugabyte-2021",
      "title": "UUID in PostgreSQL",
      "url": "https://dev.to/aws-heroes/uuid-in-postgresql-3n53",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "UUID in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1743161",
      "database": "YugabyteDB",
      "date": "2024-01-27",
      "employment_period": "yugabyte-2021",
      "title": "UUID in PostgreSQL",
      "url": "https://dev.to/aws-heroes/uuid-in-postgresql-3n53",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "After years of consulting, I'm now a Developer Advocate for YugabyteDB, a PostgreSQL-compatible distributed SQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1744051",
      "database": "PostgreSQL",
      "date": "2024-01-29",
      "employment_period": "yugabyte-2021",
      "title": "Data Residency Compliance: PostgreSQL RLS to access YugabyteDB local region",
      "url": "https://dev.to/yugabyte/data-residency-compliance-postgresql-rls-to-access-yugabytedb-local-region-3fcp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Data Residency Compliance: PostgreSQL RLS to access YugabyteDB local region.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1744051",
      "database": "YugabyteDB",
      "date": "2024-01-29",
      "employment_period": "yugabyte-2021",
      "title": "Data Residency Compliance: PostgreSQL RLS to access YugabyteDB local region",
      "url": "https://dev.to/yugabyte/data-residency-compliance-postgresql-rls-to-access-yugabytedb-local-region-3fcp",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I have deployed a YugabyteDB cluster across three different regions: North, South and West: ```sql yugabyte=# select host, cloud, region, zone from yb_servers(); host | cloud | region | zone -----------+-------+--------+------- 10.0.0.40 | cloud | north | zone1 10.0.0.41 | cloud | south | zone2 10.0.0.39 | cloud | west | zone3 (3 rows) ``` In real live, you will have multiple nodes in each region, over 3 availability",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1746184",
      "database": "YugabyteDB",
      "date": "2024-01-30",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB bulk inserts with function: faster with SQL compared to PL/pgSQL",
      "url": "https://dev.to/yugabyte/yugabytedb-bulk-inserts-with-function-faster-with-sql-compared-to-plpgsql-19pf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "benefit",
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB bulk inserts with function: faster with SQL compared to PL/pgSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1748945",
      "database": "PostgreSQL",
      "date": "2024-02-01",
      "employment_period": "yugabyte-2021",
      "title": "Best Practice: use the same datatypes for comparisons, like joins and foreign keys",
      "url": "https://dev.to/yugabyte/best-practice-use-the-same-datatypes-for-comparisons-like-joins-and-foreign-keys-3g9i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL provides many datatypes, but that's not a reason to use all of them.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1748945",
      "database": "YugabyteDB",
      "date": "2024-02-01",
      "employment_period": "yugabyte-2021",
      "title": "Best Practice: use the same datatypes for comparisons, like joins and foreign keys",
      "url": "https://dev.to/yugabyte/best-practice-use-the-same-datatypes-for-comparisons-like-joins-and-foreign-keys-3g9i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows joining a bigint-keyed table to an integer-keyed table in YugabyteDB forces an implicit cast that disables a write-buffering optimization, confirmed through the batched join execution plan.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1758428",
      "database": "Oracle Database",
      "date": "2024-02-11",
      "employment_period": "yugabyte-2021",
      "title": "Out of Range statistics with PostgreSQL & YugabyteDB",
      "url": "https://dev.to/yugabyte/out-of-range-statistics-with-postgresql-yugabytedb-2pj8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares how Oracle's linear decay, PostgreSQL's index-derived maximum, and YugabyteDB's preview cost-based optimizer each estimate row counts for a predicate reaching past the last analyze.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1758428",
      "database": "PostgreSQL",
      "date": "2024-02-11",
      "employment_period": "yugabyte-2021",
      "title": "Out of Range statistics with PostgreSQL & YugabyteDB",
      "url": "https://dev.to/yugabyte/out-of-range-statistics-with-postgresql-yugabytedb-2pj8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Let's Analyze the table: ```sql postgres=# analyze demo; ANALYZE ``` | Query | PostgreSQL | YB stats=off | YB stats=on| Actual| |:---------- | ------:| ---------:| ---------:| ----:| | ts>2024-02-07 | 125834| 172800| 125782|125999| | ts>2024-02-08 | 39053| 172800| 38853| 39599| | ts>2024-02-09 | 17| 172800| 17| 0| | ty='a' | 172800| 172800| 172800|172800| | ty='b' | 1| 172800| 1| 0| The estimations are good with Post",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1758428",
      "database": "YugabyteDB",
      "date": "2024-02-11",
      "employment_period": "yugabyte-2021",
      "title": "Out of Range statistics with PostgreSQL & YugabyteDB",
      "url": "https://dev.to/yugabyte/out-of-range-statistics-with-postgresql-yugabytedb-2pj8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Out of Range statistics with PostgreSQL & YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1778402",
      "database": "PostgreSQL",
      "date": "2024-03-03",
      "employment_period": "yugabyte-2021",
      "title": "Postgres dead tuple space reused without vacuum",
      "url": "https://dev.to/aws-heroes/dead-tuple-space-reused-without-vacuum-10fd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In my example, there's no ongoing transaction, or replication, that need to read the old version: ```sql postgres=# select xmin from ( select xmin from pg_replication_slots union all select catalog_xmin from pg_replication_slots union all select backend_xmin from pg_stat_replication union all select backend_xid from pg_stat_activity union all select backend_xmin from pg_stat_activity union all select transaction from",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1795349",
      "database": "Oracle Database",
      "date": "2024-03-19",
      "employment_period": "yugabyte-2021",
      "title": "What's the equivalent of pageinspect in YugabyteDB?",
      "url": "https://dev.to/yugabyte/whats-the-equivalent-of-pageinspect-in-yugabytedb-21nh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "All versions are stored together which avoids all the random reads you will find in PostgreSQL or Oracle to find the right version.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1795349",
      "database": "PostgreSQL",
      "date": "2024-03-19",
      "employment_period": "yugabyte-2021",
      "title": "What's the equivalent of pageinspect in YugabyteDB?",
      "url": "https://dev.to/yugabyte/whats-the-equivalent-of-pageinspect-in-yugabytedb-21nh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Finds the YugabyteDB equivalent of PostgreSQL's page-inspection extension, using RocksDB's SST dump tool, and locates an inserted row's text only inside the tablet's write-ahead log.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1795349",
      "database": "YugabyteDB",
      "date": "2024-03-19",
      "employment_period": "yugabyte-2021",
      "title": "What's the equivalent of pageinspect in YugabyteDB?",
      "url": "https://dev.to/yugabyte/whats-the-equivalent-of-pageinspect-in-yugabytedb-21nh",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The RocksDB iterators are efficient at merging from multiple files (the M in LSM-Tree stands for Merge) and YugabyteDB leverages this by using two LSM-Trees per tablets.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1795681",
      "database": "YugabyteDB",
      "date": "2024-03-19",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Transactional Load with Non-transactional COPY",
      "url": "https://dev.to/yugabyte/yugabytedb-transactional-load-with-non-transactional-copy-10ac",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Transactional Load with Non-transactional COPY.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1793135",
      "database": "Oracle Database",
      "date": "2024-03-21",
      "employment_period": "yugabyte-2021",
      "title": "B-Tree vs. LSM-Tree: measuring the write amplification on Oracle Database and YugabyteDB",
      "url": "https://dev.to/yugabyte/b-tree-vs-lsm-tree-measuring-the-write-amplification-on-oracle-database-and-yugabytedb-4m7k",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "## B-Tree write amplification with Oracle Let's take an example to illustrate how writes to B-trees can be slow and unpredictable.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1793135",
      "database": "YugabyteDB",
      "date": "2024-03-21",
      "employment_period": "yugabyte-2021",
      "title": "B-Tree vs. LSM-Tree: measuring the write amplification on Oracle Database and YugabyteDB",
      "url": "https://dev.to/yugabyte/b-tree-vs-lsm-tree-measuring-the-write-amplification-on-oracle-database-and-yugabytedb-4m7k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "LSM-Tree: measuring the write amplification on Oracle Database and YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:ngghe",
      "database": "Cassandra",
      "date": "2024-03-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL architecture and what Oracle didn't grasp about it",
      "url": "https://www.linkedin.com/pulse/distributed-sql-architecture-what-oracle-didnt-grasp-franck-pachot-ngghe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In YugabyteDB, this is the \"Languages and Relational Technologies (LRT)\" with YSQL (the PostgreSQL compatible API) or YCQL (the Cassandra-like API).",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:ngghe",
      "database": "MySQL",
      "date": "2024-03-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL architecture and what Oracle didn't grasp about it",
      "url": "https://www.linkedin.com/pulse/distributed-sql-architecture-what-oracle-didnt-grasp-franck-pachot-ngghe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MySQL also provides for various storage engines, such as InnoDB or MyRocks.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:ngghe",
      "database": "Oracle Database",
      "date": "2024-03-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL architecture and what Oracle didn't grasp about it",
      "url": "https://www.linkedin.com/pulse/distributed-sql-architecture-what-oracle-didnt-grasp-franck-pachot-ngghe",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "That said, except for the message about running \"on top of NoSQL engine\", Oracle Sharding in the \"Autonomous\" Oracle managed service is great for its purpose like Data Sovereignty and to Partition to datacenters beyond the distances acceptable by Oracle RAC.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:ngghe",
      "database": "PostgreSQL",
      "date": "2024-03-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL architecture and what Oracle didn't grasp about it",
      "url": "https://www.linkedin.com/pulse/distributed-sql-architecture-what-oracle-didnt-grasp-franck-pachot-ngghe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In YugabyteDB, this is the \"Languages and Relational Technologies (LRT)\" with YSQL (the PostgreSQL compatible API) or YCQL (the Cassandra-like API).",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:ngghe",
      "database": "YugabyteDB",
      "date": "2024-03-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributed SQL architecture and what Oracle didn't grasp about it",
      "url": "https://www.linkedin.com/pulse/distributed-sql-architecture-what-oracle-didnt-grasp-franck-pachot-ngghe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In YugabyteDB, this is the \"Languages and Relational Technologies (LRT)\" with YSQL (the PostgreSQL compatible API) or YCQL (the Cassandra-like API).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1800832",
      "database": "PostgreSQL",
      "date": "2024-03-25",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL index Correlation with UPDATE",
      "url": "https://dev.to/aws-heroes/postgresql-index-correlation-with-update-2a2k",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "bad",
        "slow"
      ],
      "evidence_excerpt": "Reproduces a reported case of Postgres choosing a slow sort-heavy plan over an indexed order-by, showing a freshly analyzed table with separate filter and sort indexes picks range-scan-then-sort.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:31794",
      "database": "Oracle Database",
      "date": "2024-03-26",
      "employment_period": "yugabyte-2021",
      "title": "Solving PostgreSQL Indexes, Partitioning, and LockManager Limitations",
      "url": "https://www.yugabyte.com/blog/postgresql-indexes-partitioning-lockmanager-limitations/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Kyle Hailey, who has extensive Oracle Database and performance troubleshooting experience, documented one such issue at Midjourney , highlighting how surprised he was by PostgreSQL’s limitations.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:31794",
      "database": "PostgreSQL",
      "date": "2024-03-26",
      "employment_period": "yugabyte-2021",
      "title": "Solving PostgreSQL Indexes, Partitioning, and LockManager Limitations",
      "url": "https://www.yugabyte.com/blog/postgresql-indexes-partitioning-lockmanager-limitations/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "If you do, try not to use many SQL partitions as in PostgreSQL and instead rely on the built-in distribution for simplified operations and faster execution.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:31794",
      "database": "YugabyteDB",
      "date": "2024-03-26",
      "employment_period": "yugabyte-2021",
      "title": "Solving PostgreSQL Indexes, Partitioning, and LockManager Limitations",
      "url": "https://www.yugabyte.com/blog/postgresql-indexes-partitioning-lockmanager-limitations/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "good",
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It distributes table rows and index entries, reducing the reliance on declarative partitioning.* *NOTE: Declarative partitioning remains useful in YugabyteDB for, say, purging old data and ensuring data sovereignty, where managing tens of partitions is acceptable.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1809261",
      "database": "Amazon Aurora",
      "date": "2024-04-03",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL with modern storage: what about a lower random_page_cost?",
      "url": "https://dev.to/aws-heroes/postgresql-with-modern-storage-what-about-a-lower-randompagecost-5b7f",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The topic was widely discussed last week, in favor of a lower value for `random_page_cost`: - 100x Faster Query in Aurora Postgres with a lower random_page_cost - when we migrated ~1TB DB from heroku -> AWS, everything broke - Use random_page_cost = 1.1 on modern servers The `random_page_cost` parameter accounts for the latency incurred by random reads, particularly from indexes with poor correlation factors.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1809261",
      "database": "Oracle Database",
      "date": "2024-04-03",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL with modern storage: what about a lower random_page_cost?",
      "url": "https://dev.to/aws-heroes/postgresql-with-modern-storage-what-about-a-lower-randompagecost-5b7f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "Oracle still employs these numbers, namely, 10ms IO seek time and 4kB/second IO transfer time when no system statistics are gathered, and this is the recommended practice.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1809261",
      "database": "PostgreSQL",
      "date": "2024-04-03",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL with modern storage: what about a lower random_page_cost?",
      "url": "https://dev.to/aws-heroes/postgresql-with-modern-storage-what-about-a-lower-randompagecost-5b7f",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "## Index with bad correlation factor When there is poor correlation between the index entries and the physical rows in a heap table, PostgreSQL utilizes a Bitmap Scan to prevent reading the same page multiple times.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1812979",
      "database": "YugabyteDB",
      "date": "2024-04-06",
      "employment_period": "yugabyte-2021",
      "title": "\"ERROR: Perform RPC timed out after 602.000s\" in YSQL",
      "url": "https://dev.to/yugabyte/error-perform-rpc-timed-out-after-600000s-in-ysql-1010",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Traces YugabyteDB's Perform RPC timed out after 602 seconds error to the interaction between statement_timeout and a hardcoded 600-second client read-write timeout default in the session code.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:32125",
      "database": "PostgreSQL",
      "date": "2024-04-16",
      "employment_period": "yugabyte-2021",
      "title": "Advanced PostgreSQL Partitioning by Date with YugabyteDB Auto Sharding",
      "url": "https://www.yugabyte.com/blog/postgresql-advanced-partitioning-by-date/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "delivers stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Advanced PostgreSQL Partitioning by Date with YugabyteDB Auto Sharding.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:32125",
      "database": "YugabyteDB",
      "date": "2024-04-16",
      "employment_period": "yugabyte-2021",
      "title": "Advanced PostgreSQL Partitioning by Date with YugabyteDB Auto Sharding",
      "url": "https://www.yugabyte.com/blog/postgresql-advanced-partitioning-by-date/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "delivers stated advantages",
        "efficient",
        "fast",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB’s LSM-Tree structure allows fast index entry inserts by appending the new entry directly to the MemTable without having to read previous values.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1825309",
      "database": "MongoDB",
      "date": "2024-04-17",
      "employment_period": "yugabyte-2021",
      "title": "MongoDB Associate Data Modeler Exam",
      "url": "https://dev.to/aws-heroes/mongodb-associate-data-modeler-exam-46df",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB Associate Data Modeler Exam.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1829867",
      "database": "PostgreSQL",
      "date": "2024-04-21",
      "employment_period": "yugabyte-2021",
      "title": "Simulate Clock Skew in Docker Container",
      "url": "https://dev.to/yugabyte/simulate-clock-skew-in-docker-container-2com",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example with a 2-node RF1 YugabyteDB cluster (PostgreSQL-compatible Distributed SQL database).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1829867",
      "database": "YugabyteDB",
      "date": "2024-04-21",
      "employment_period": "yugabyte-2021",
      "title": "Simulate Clock Skew in Docker Container",
      "url": "https://dev.to/yugabyte/simulate-clock-skew-in-docker-container-2com",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Builds a fake clock_gettime LD_PRELOAD library that subtracts milliseconds from the system clock to simulate clock skew between two YugabyteDB Docker containers just under the crash threshold.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1831930",
      "database": "Oracle Database",
      "date": "2024-04-24",
      "employment_period": "yugabyte-2021",
      "title": "Snapshot too old in YugabyteDB",
      "url": "https://dev.to/yugabyte/snapshot-too-old-in-yugabytedb-23g5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares PostgreSQL's unbounded MVCC history growth during vacuum against YugabyteDB's retention-interval cutoff, similar to Oracle's undo retention, for failing long-running transactions.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1831930",
      "database": "PostgreSQL",
      "date": "2024-04-24",
      "employment_period": "yugabyte-2021",
      "title": "Snapshot too old in YugabyteDB",
      "url": "https://dev.to/yugabyte/snapshot-too-old-in-yugabytedb-23g5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares PostgreSQL's unbounded MVCC history growth during vacuum against YugabyteDB's retention-interval cutoff, similar to Oracle's undo retention, for failing long-running transactions.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1831930",
      "database": "YugabyteDB",
      "date": "2024-04-24",
      "employment_period": "yugabyte-2021",
      "title": "Snapshot too old in YugabyteDB",
      "url": "https://dev.to/yugabyte/snapshot-too-old-in-yugabytedb-23g5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In contrast, YugabyteDB offers reliable, efficient, and scalable MVCC (Multi-Version Concurrency Control) snapshots by design, thanks to its built-in Raft replication and LSM (Log-Structured Merge) Tree storage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1834323",
      "database": "Amazon Aurora",
      "date": "2024-04-25",
      "employment_period": "yugabyte-2021",
      "title": "Custom SQL Scripts in PostgreSQL PgBench",
      "url": "https://www.yugabyte.com/blog/pgbench-custom-sql-scripts/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This applies to PostgreSQL and Postgres-compatible databases like Aurora or YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1834323",
      "database": "PostgreSQL",
      "date": "2024-04-25",
      "employment_period": "yugabyte-2021",
      "title": "Custom SQL Scripts in PostgreSQL PgBench",
      "url": "https://www.yugabyte.com/blog/pgbench-custom-sql-scripts/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Custom SQL Scripts in PostgreSQL PgBench.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1834323",
      "database": "YugabyteDB",
      "date": "2024-04-25",
      "employment_period": "yugabyte-2021",
      "title": "Custom SQL Scripts in PostgreSQL PgBench",
      "url": "https://www.yugabyte.com/blog/pgbench-custom-sql-scripts/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows running custom SQL scripts in pgbench against a three-node YugabyteDB cluster instead of the default workload, using random host selection to spread client connections across nodes.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:32193",
      "database": "PostgreSQL",
      "date": "2024-04-25",
      "employment_period": "yugabyte-2021",
      "title": "How to Enhance Database Performance Testing Using Custom SQL Scripts in PgBench",
      "url": "https://www.yugabyte.com/blog/pgbench-custom-sql-scripts/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This applies to PostgreSQL and Postgres-compatible databases .",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:32193",
      "database": "YugabyteDB",
      "date": "2024-04-25",
      "employment_period": "yugabyte-2021",
      "title": "How to Enhance Database Performance Testing Using Custom SQL Scripts in PgBench",
      "url": "https://www.yugabyte.com/blog/pgbench-custom-sql-scripts/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Demonstrates replacing pgbench's default TPC-B workload with custom SQL scripts against a 3-node YugabyteDB Docker Compose cluster to better approximate real application load.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1836259",
      "database": "YugabyteDB",
      "date": "2024-04-27",
      "employment_period": "yugabyte-2021",
      "title": "A smaller YugabyteDB image for CI/CD (example with Sakila)",
      "url": "https://dev.to/yugabyte/a-smaller-yugabytedb-image-for-cicd-1ig3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A smaller YugabyteDB image for CI/CD (example with Sakila).",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:bpybe",
      "database": "CockroachDB",
      "date": "2024-04-27",
      "employment_period": "yugabyte-2021",
      "title": "External Consistency in Distributed SQL",
      "url": "https://www.linkedin.com/pulse/external-consistency-distributed-sql-franck-pachot-bpybe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "CockroachDB provides a single sharding method, range sharding, and ranges can be split at any value, so it cannot guarantee that the comments will be directed to the same shard.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:bpybe",
      "database": "PostgreSQL",
      "date": "2024-04-27",
      "employment_period": "yugabyte-2021",
      "title": "External Consistency in Distributed SQL",
      "url": "https://www.linkedin.com/pulse/external-consistency-distributed-sql-franck-pachot-bpybe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Still, with YugabyteDB , there's an easy solution to avoid external consistency violations: thanks to PostgreSQL compatibility, there are enough SQL features to declare the causality in the SQL transaction and guarantee strong internal consistency.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:bpybe",
      "database": "YugabyteDB",
      "date": "2024-04-27",
      "employment_period": "yugabyte-2021",
      "title": "External Consistency in Distributed SQL",
      "url": "https://www.linkedin.com/pulse/external-consistency-distributed-sql-franck-pachot-bpybe",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable",
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB architecture didn't choose this solution because everything must be scalable in multi-region deployments.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1841842",
      "database": "YugabyteDB",
      "date": "2024-05-07",
      "employment_period": "yugabyte-2021",
      "title": "A lightweight YugabyteDB docker image for CI/CD",
      "url": "https://dev.to/yugabyte/a-lightweight-yugabytedb-docker-image-for-cicd-3na8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "When it comes to production, it is recommended to use the official docker image for YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1847344",
      "database": "Microsoft SQL Server",
      "date": "2024-05-09",
      "employment_period": "yugabyte-2021",
      "title": "Advisory/Custom/Application Lock with YugabyteDB",
      "url": "https://dev.to/yugabyte/advisorycustomapplication-lock-with-yugabytedb-jao",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, PostgreSQL provides `pg_advisory_lock`, MySQL has `get_lock`, Oracle Database offers `dbms_lock`, and SQL Server use `sp_getapplock`.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1847344",
      "database": "MySQL",
      "date": "2024-05-09",
      "employment_period": "yugabyte-2021",
      "title": "Advisory/Custom/Application Lock with YugabyteDB",
      "url": "https://dev.to/yugabyte/advisorycustomapplication-lock-with-yugabytedb-jao",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, PostgreSQL provides `pg_advisory_lock`, MySQL has `get_lock`, Oracle Database offers `dbms_lock`, and SQL Server use `sp_getapplock`.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1847344",
      "database": "Oracle Database",
      "date": "2024-05-09",
      "employment_period": "yugabyte-2021",
      "title": "Advisory/Custom/Application Lock with YugabyteDB",
      "url": "https://dev.to/yugabyte/advisorycustomapplication-lock-with-yugabytedb-jao",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, PostgreSQL provides `pg_advisory_lock`, MySQL has `get_lock`, Oracle Database offers `dbms_lock`, and SQL Server use `sp_getapplock`.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1847344",
      "database": "PostgreSQL",
      "date": "2024-05-09",
      "employment_period": "yugabyte-2021",
      "title": "Advisory/Custom/Application Lock with YugabyteDB",
      "url": "https://dev.to/yugabyte/advisorycustomapplication-lock-with-yugabytedb-jao",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, PostgreSQL provides `pg_advisory_lock`, MySQL has `get_lock`, Oracle Database offers `dbms_lock`, and SQL Server use `sp_getapplock`.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1847344",
      "database": "YugabyteDB",
      "date": "2024-05-09",
      "employment_period": "yugabyte-2021",
      "title": "Advisory/Custom/Application Lock with YugabyteDB",
      "url": "https://dev.to/yugabyte/advisorycustomapplication-lock-with-yugabytedb-jao",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Advisory/Custom/Application Lock with YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1849849",
      "database": "YugabyteDB",
      "date": "2024-05-11",
      "employment_period": "yugabyte-2021",
      "title": "Crash on clock skew: performance vs availability",
      "url": "https://dev.to/yugabyte/crash-on-clock-skew-performance-vs-availability-5gp9",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It is a good idea to check the NTP synchronization when starting a YugabyteDB node.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1854248",
      "database": "PostgreSQL",
      "date": "2024-05-16",
      "employment_period": "yugabyte-2021",
      "title": "Server-side cache for YugabyteDB sequences to workaround the Nspgl `DISCARD SEQUENCES`",
      "url": "https://dev.to/yugabyte/server-side-cache-for-yugabytedb-sequences-to-workaround-the-nspgl-discard-sequences-58jp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows Npgsql's discard-sequences call after each pooled connection defeats PostgreSQL's per-connection sequence cache, while YugabyteDB's server-side cache keeps throughput far higher.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1854248",
      "database": "YugabyteDB",
      "date": "2024-05-16",
      "employment_period": "yugabyte-2021",
      "title": "Server-side cache for YugabyteDB sequences to workaround the Nspgl `DISCARD SEQUENCES`",
      "url": "https://dev.to/yugabyte/server-side-cache-for-yugabytedb-sequences-to-workaround-the-nspgl-discard-sequences-58jp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Server-side cache for YugabyteDB sequences to workaround the Nspgl `DISCARD SEQUENCES`.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1859653",
      "database": "Amazon Aurora",
      "date": "2024-05-21",
      "employment_period": "yugabyte-2021",
      "title": "Multi-AZ PostgreSQL COMMIT wait events: WALSync, SyncRep & XactSync",
      "url": "https://dev.to/aws-heroes/multi-az-postgresql-commit-wait-events-walsync-syncrep-xactsync-2hp2",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Contrary to popular belief, Aurora offers additional features such as higher availability and faster point-in-time recovery, but not necessarily better performance.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1859653",
      "database": "PostgreSQL",
      "date": "2024-05-21",
      "employment_period": "yugabyte-2021",
      "title": "Multi-AZ PostgreSQL COMMIT wait events: WALSync, SyncRep & XactSync",
      "url": "https://dev.to/aws-heroes/multi-az-postgresql-commit-wait-events-walsync-syncrep-xactsync-2hp2",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "While a single PostgreSQL cluster is always faster, it may lose data or experience high downtimes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1863206",
      "database": "YugabyteDB",
      "date": "2024-05-24",
      "employment_period": "yugabyte-2021",
      "title": "YB-Master, the YugabyteDB Universe control plane",
      "url": "https://dev.to/yugabyte/yb-master-the-yugabytedb-universe-control-plane-3398",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YB-Master, the YugabyteDB Universe control plane.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1839399",
      "database": "PostgreSQL",
      "date": "2024-05-28",
      "employment_period": "yugabyte-2021",
      "title": "Distributed PostgreSQL with YugabyteDB Multi-Region Kubernetes / Istio / Amazon EKS",
      "url": "https://dev.to/aws-heroes/distributed-postgresql-with-yugabytedb-multi-region-kubernetes-istio-amazon-eks-366a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed PostgreSQL with YugabyteDB Multi-Region Kubernetes / Istio / Amazon EKS.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1839399",
      "database": "YugabyteDB",
      "date": "2024-05-28",
      "employment_period": "yugabyte-2021",
      "title": "Distributed PostgreSQL with YugabyteDB Multi-Region Kubernetes / Istio / Amazon EKS",
      "url": "https://dev.to/aws-heroes/distributed-postgresql-with-yugabytedb-multi-region-kubernetes-istio-amazon-eks-366a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed PostgreSQL with YugabyteDB Multi-Region Kubernetes / Istio / Amazon EKS.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1865906",
      "database": "YugabyteDB",
      "date": "2024-05-28",
      "employment_period": "yugabyte-2021",
      "title": "The Log Is (not) The Database",
      "url": "https://dev.to/yugabyte/the-log-is-the-database-in2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Argues against the log-is-the-database framing, tracing write-ahead logging to the 1992 ARIES paper, while showing YugabyteDB's write path really does distribute a sharded log to LSM-tree storage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1872956",
      "database": "YugabyteDB",
      "date": "2024-06-03",
      "employment_period": "yugabyte-2021",
      "title": "Deletes and MVCC in YugabyteDB",
      "url": "https://dev.to/yugabyte/deletes-and-mvcc-in-yugabytedb-12ip",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Deletes and MVCC in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1875686",
      "database": "PostgreSQL",
      "date": "2024-06-03",
      "employment_period": "yugabyte-2021",
      "title": "Partitions, Merge Append, Pagination, and Limit pushdown in YugabyteDB",
      "url": "https://dev.to/yugabyte/partitions-merge-append-pagination-and-limit-pushdown-in-yugabytedb-49ml",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows a poorly chosen per-partition index forcing PostgreSQL to sort rows from each of four range partitions with a top-N heapsort merge append, instead of returning already-ordered rows.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1875686",
      "database": "YugabyteDB",
      "date": "2024-06-03",
      "employment_period": "yugabyte-2021",
      "title": "Partitions, Merge Append, Pagination, and Limit pushdown in YugabyteDB",
      "url": "https://dev.to/yugabyte/partitions-merge-append-pagination-and-limit-pushdown-in-yugabytedb-49ml",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Partitions, Merge Append, Pagination, and Limit pushdown in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1878978",
      "database": "CockroachDB",
      "date": "2024-06-07",
      "employment_period": "yugabyte-2021",
      "title": "Comparing DB engines by CPU instructions for simple DML",
      "url": "https://dev.to/yugabyte/comparing-sql-engines-by-cpu-instructions-for-dml-48a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses perf stat on Docker cgroups to count CPU instructions for inserting, updating, and deleting two million rows across PostgreSQL, MySQL, Oracle, SQL Server, MongoDB, YugabyteDB and CockroachDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1878978",
      "database": "Oracle Database",
      "date": "2024-06-07",
      "employment_period": "yugabyte-2021",
      "title": "Comparing DB engines by CPU instructions for simple DML",
      "url": "https://dev.to/yugabyte/comparing-sql-engines-by-cpu-instructions-for-dml-48a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses perf stat on Docker cgroups to count CPU instructions for inserting, updating, and deleting two million rows across PostgreSQL, MySQL, Oracle, SQL Server, MongoDB, YugabyteDB and CockroachDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1878978",
      "database": "PostgreSQL",
      "date": "2024-06-07",
      "employment_period": "yugabyte-2021",
      "title": "Comparing DB engines by CPU instructions for simple DML",
      "url": "https://dev.to/yugabyte/comparing-sql-engines-by-cpu-instructions-for-dml-48a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses perf stat on Docker cgroups to count CPU instructions for inserting, updating, and deleting two million rows across PostgreSQL, MySQL, Oracle, SQL Server, MongoDB, YugabyteDB and CockroachDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1878978",
      "database": "YugabyteDB",
      "date": "2024-06-07",
      "employment_period": "yugabyte-2021",
      "title": "Comparing DB engines by CPU instructions for simple DML",
      "url": "https://dev.to/yugabyte/comparing-sql-engines-by-cpu-instructions-for-dml-48a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Uses perf stat on Docker cgroups to count CPU instructions for inserting, updating, and deleting two million rows across PostgreSQL, MySQL, Oracle, SQL Server, MongoDB, YugabyteDB and CockroachDB.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:dpmaf",
      "database": "CockroachDB",
      "date": "2024-06-13",
      "employment_period": "yugabyte-2021",
      "title": "Handling large data volumes with PostgreSQL and YugabyteDB",
      "url": "https://www.linkedin.com/pulse/handling-large-data-volumes-postgresql-yugabytedb-franck-pachot-dpmaf",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Figma mentioned that they borrowed CockroachDB's Postgres parser, so the limitation in SQL features is apparent.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:dpmaf",
      "database": "PostgreSQL",
      "date": "2024-06-13",
      "employment_period": "yugabyte-2021",
      "title": "Handling large data volumes with PostgreSQL and YugabyteDB",
      "url": "https://www.linkedin.com/pulse/handling-large-data-volumes-postgresql-yugabytedb-franck-pachot-dpmaf",
      "source": "linkedin",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 3,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [],
      "critical_signals": [
        "limitation",
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "Figma mentioned that they borrowed CockroachDB's Postgres parser, so the limitation in SQL features is apparent.",
      "relation_aware": true
    },
    {
      "publication_id": "linkedin:dpmaf",
      "database": "YugabyteDB",
      "date": "2024-06-13",
      "employment_period": "yugabyte-2021",
      "title": "Handling large data volumes with PostgreSQL and YugabyteDB",
      "url": "https://www.linkedin.com/pulse/handling-large-data-volumes-postgresql-yugabytedb-franck-pachot-dpmaf",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "improved",
        "overcomes stated disadvantages",
        "scalable"
      ],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "YugabyteDB : The database is designed to be scalable.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1886190",
      "database": "PostgreSQL",
      "date": "2024-06-14",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Region Async Table Broadcast with YugabyteDB xCluster 1-to-N replication",
      "url": "https://dev.to/yugabyte/multi-region-async-table-broadcast-with-yugabytedb-xcluster-1-to-n-replication-3d6f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is in contrast to Postgresql logical replication, which has scalability limitations and often requires dropping indexes and foreign keys to catch up after initialization on large tables.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1886190",
      "database": "YugabyteDB",
      "date": "2024-06-14",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Region Async Table Broadcast with YugabyteDB xCluster 1-to-N replication",
      "url": "https://dev.to/yugabyte/multi-region-async-table-broadcast-with-yugabytedb-xcluster-1-to-n-replication-3d6f",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "delivers stated advantages",
        "possesses stated advantages",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Compares three ways YugabyteDB serves reduced-latency stale reads, primary-cluster Raft followers, extended Read Replicas, and asynchronous xCluster replicas, each with different tradeoffs.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1889875",
      "database": "Oracle Database",
      "date": "2024-06-17",
      "employment_period": "yugabyte-2021",
      "title": "Observing Clock Skew ERROR: 40001 - Restart read required",
      "url": "https://dev.to/yugabyte/observing-clock-skew-error-40001-restart-read-required-580j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, Oracle encountered an issue in 11gR2, which is now solved, and PostgreSQL still experiences transaction ID wraparound problems when some long transactions or operations increase the XMIN horizon.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1889875",
      "database": "PostgreSQL",
      "date": "2024-06-17",
      "employment_period": "yugabyte-2021",
      "title": "Observing Clock Skew ERROR: 40001 - Restart read required",
      "url": "https://dev.to/yugabyte/observing-clock-skew-error-40001-restart-read-required-580j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, Oracle encountered an issue in 11gR2, which is now solved, and PostgreSQL still experiences transaction ID wraparound problems when some long transactions or operations increase the XMIN horizon.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1889875",
      "database": "YugabyteDB",
      "date": "2024-06-17",
      "employment_period": "yugabyte-2021",
      "title": "Observing Clock Skew ERROR: 40001 - Restart read required",
      "url": "https://dev.to/yugabyte/observing-clock-skew-error-40001-restart-read-required-580j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Demonstrates YugabyteDB's restart-read-required error, triggered when the Hybrid Logical Clock's uncertainty window forces a retry during two concurrent delete transactions on the same rows.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:voyhe",
      "database": "PostgreSQL",
      "date": "2024-06-17",
      "employment_period": "yugabyte-2021",
      "title": "Testing DBtune, showing PostgreSQL double buffering, and some thoughts about automated database tuning for SQL databases",
      "url": "https://www.linkedin.com/pulse/testing-dbtune-showing-postgresql-double-buffering-some-franck-pachot-voyhe",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The second part shows some interesting results about optimal memory usage in PostgreSQL and a better understanding of the main resources DBtune is showing: RAM, CPU, IOPS, and Disk.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:32452",
      "database": "YugabyteDB",
      "date": "2024-06-17",
      "employment_period": "yugabyte-2021",
      "title": "Improving Your SQL Indexing: How to Effectively Order Columns",
      "url": "https://www.yugabyte.com/blog/improving-sql-indexing-how-to-order-columns/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Walks through ordering equality, range, and sort columns in a multi-column index key, then validates the chosen order on YugabyteDB with EXPLAIN ANALYZE against a sample query.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1892695",
      "database": "YugabyteDB",
      "date": "2024-06-18",
      "employment_period": "yugabyte-2021",
      "title": "Active Session History (ASH) in YugabyteDB",
      "url": "https://dev.to/yugabyte/active-session-history-ash-in-yugabytedb-39ic",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Active Session History (ASH) in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:32486",
      "database": "PostgreSQL",
      "date": "2024-06-27",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Resiliency vs. PostgreSQL High Availability Solutions",
      "url": "https://www.yugabyte.com/blog/yugabytedb-resiliency-vs-postgresql-ha-solutions/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 16,
      "positive_signals": [
        "fast",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Note that sharding on top of PostgreSQL (like Citus) may reduce the impact of a failure, but doesn’t solve the original problem of resiliency as each shard is still monolithic PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:32486",
      "database": "YugabyteDB",
      "date": "2024-06-27",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Resiliency vs. PostgreSQL High Availability Solutions",
      "url": "https://www.yugabyte.com/blog/yugabytedb-resiliency-vs-postgresql-ha-solutions/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "overcomes stated disadvantages",
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Contrasts PostgreSQL's monolithic WAL, buffer pool, and transaction table as single points of failure with YugabyteDB's built-in resiliency that avoids failover downtime entirely.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1909835",
      "database": "Amazon Aurora",
      "date": "2024-07-03",
      "employment_period": "yugabyte-2021",
      "title": "Stored Procedures & Exception Handling when migrating from Oracle to PostgreSQL or YugabyteDB",
      "url": "https://dev.to/aws-heroes/stored-procedures-exception-handling-when-migrating-from-oracle-to-postgresql-or-yugabytedb-3i2e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Lot of companies hope to find a solution to easily move their PL/SQL code from Oracle Database to PostgreSQL or PostgreSQL-compatible managed services such as Amazon Aurora or YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1909835",
      "database": "Oracle Database",
      "date": "2024-07-03",
      "employment_period": "yugabyte-2021",
      "title": "Stored Procedures & Exception Handling when migrating from Oracle to PostgreSQL or YugabyteDB",
      "url": "https://dev.to/aws-heroes/stored-procedures-exception-handling-when-migrating-from-oracle-to-postgresql-or-yugabytedb-3i2e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Stored Procedures & Exception Handling when migrating from Oracle to PostgreSQL or YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1909835",
      "database": "PostgreSQL",
      "date": "2024-07-03",
      "employment_period": "yugabyte-2021",
      "title": "Stored Procedures & Exception Handling when migrating from Oracle to PostgreSQL or YugabyteDB",
      "url": "https://dev.to/aws-heroes/stored-procedures-exception-handling-when-migrating-from-oracle-to-postgresql-or-yugabytedb-3i2e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "It's important to note that savepoints can be expensive in PostgreSQL, even though it has been optimized for PG17.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1909835",
      "database": "YugabyteDB",
      "date": "2024-07-03",
      "employment_period": "yugabyte-2021",
      "title": "Stored Procedures & Exception Handling when migrating from Oracle to PostgreSQL or YugabyteDB",
      "url": "https://dev.to/aws-heroes/stored-procedures-exception-handling-when-migrating-from-oracle-to-postgresql-or-yugabytedb-3i2e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Stored Procedures & Exception Handling when migrating from Oracle to PostgreSQL or YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1911547",
      "database": "PostgreSQL",
      "date": "2024-07-04",
      "employment_period": "yugabyte-2021",
      "title": "Optimizing Fuzzy Search Across Multiple Tables: pg_trgm, GIN, and Triggers",
      "url": "https://dev.to/yugabyte/optimizing-fuzzy-search-across-multiple-tables-pgtrgm-gin-and-triggers-4d1p",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL offers significant improvements beyond single-column indexing, which YugabyteDB also leverages.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1911547",
      "database": "YugabyteDB",
      "date": "2024-07-04",
      "employment_period": "yugabyte-2021",
      "title": "Optimizing Fuzzy Search Across Multiple Tables: pg_trgm, GIN, and Triggers",
      "url": "https://dev.to/yugabyte/optimizing-fuzzy-search-across-multiple-tables-pgtrgm-gin-and-triggers-4d1p",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL offers significant improvements beyond single-column indexing, which YugabyteDB also leverages.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1929636",
      "database": "YugabyteDB",
      "date": "2024-07-20",
      "employment_period": "yugabyte-2021",
      "title": "Find hotspots with Yugabyte Active Session History",
      "url": "https://dev.to/yugabyte/find-hotspots-with-yugabyte-active-session-history-45db",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Find hotspots with Yugabyte Active Session History.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1926039",
      "database": "PostgreSQL",
      "date": "2024-07-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributing PostgreSQL on Amazon Elastic Kubernetes",
      "url": "https://dev.to/aws-heroes/distributing-postgresql-on-amazon-elastic-kubernetes-2f5g",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributing PostgreSQL on Amazon Elastic Kubernetes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1926039",
      "database": "YugabyteDB",
      "date": "2024-07-21",
      "employment_period": "yugabyte-2021",
      "title": "Distributing PostgreSQL on Amazon Elastic Kubernetes",
      "url": "https://dev.to/aws-heroes/distributing-postgresql-on-amazon-elastic-kubernetes-2f5g",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "faster",
        "great"
      ],
      "critical_signals": [
        "unsupported"
      ],
      "evidence_excerpt": "I will also do a live demonstration of YugabyteDB's elasticity and resilience using a great platform for a cloud-native database: Amazon Elastic Kubernetes Service (Amazon EKS).",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:ljfee",
      "database": "YugabyteDB",
      "date": "2024-07-29",
      "employment_period": "yugabyte-2021",
      "title": "Separation of compute and storage for YugabyteDB",
      "url": "https://www.linkedin.com/pulse/separation-compute-storage-databases-example-franck-pachot-ljfee",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Separation of compute and storage for YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1941295",
      "database": "Oracle Database",
      "date": "2024-07-30",
      "employment_period": "yugabyte-2021",
      "title": "Exceptions and Commit in PostgreSQL PL/pgSQL vs. Oracle PL/SQL",
      "url": "https://dev.to/aws-heroes/exceptions-and-commit-in-postgresql-plpgsql-vs-oracle-plsql-1nk8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle PL/SQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1941295",
      "database": "PostgreSQL",
      "date": "2024-07-30",
      "employment_period": "yugabyte-2021",
      "title": "Exceptions and Commit in PostgreSQL PL/pgSQL vs. Oracle PL/SQL",
      "url": "https://dev.to/aws-heroes/exceptions-and-commit-in-postgresql-plpgsql-vs-oracle-plsql-1nk8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Exceptions and Commit in PostgreSQL PL/pgSQL vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1941295",
      "database": "YugabyteDB",
      "date": "2024-07-30",
      "employment_period": "yugabyte-2021",
      "title": "Exceptions and Commit in PostgreSQL PL/pgSQL vs. Oracle PL/SQL",
      "url": "https://dev.to/aws-heroes/exceptions-and-commit-in-postgresql-plpgsql-vs-oracle-plsql-1nk8",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "drawback"
      ],
      "evidence_excerpt": "An intermediate commit is possible only when there is no exception block present, thus preventing the start of a subtransaction: ```sql do $BODY$ begin insert into demo (id) values(1); commit; insert into demo (id) values(1); end; $BODY$; ERROR: 23505: duplicate key value violates unique constraint \"demo_pkey\" LOCATION: YBFlushBufferedOperations, ../../src/yb/yql/pggate/pg_perform_future.cc:36 yugabyte=# select * fro",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1941672",
      "database": "YugabyteDB",
      "date": "2024-07-31",
      "employment_period": "yugabyte-2021",
      "title": "Observing CPU/RAM/IO pressure in YugabyteDB with Linux PSI on AlmaLinux8 (Pressure Stall Information)",
      "url": "https://dev.to/yugabyte/observing-cpuramio-pressure-in-yugabytedb-with-linux-psi-on-almalinux8-pressure-stall-information-ik8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Observing CPU/RAM/IO pressure in YugabyteDB with Linux PSI on AlmaLinux8 (Pressure Stall Information).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1946824",
      "database": "PostgreSQL",
      "date": "2024-08-05",
      "employment_period": "yugabyte-2021",
      "title": "Performance of range queries in B-Tree and LSM indexes",
      "url": "https://dev.to/yugabyte/performance-of-range-queries-in-b-tree-and-lsm-indexes-3pbj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Compares reading the newest fifty thousand rows via a descending covering index on PostgreSQL's B-tree, counted in shared buffers, against YugabyteDB's RocksDB-based LSM-tree read metrics.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1946824",
      "database": "YugabyteDB",
      "date": "2024-08-05",
      "employment_period": "yugabyte-2021",
      "title": "Performance of range queries in B-Tree and LSM indexes",
      "url": "https://dev.to/yugabyte/performance-of-range-queries-in-b-tree-and-lsm-indexes-3pbj",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "--- Even if a bit slower, the response time in YugabyteDB is more predictable as it doesn't depend on vacuum, and the throughput can increase with horizontal scalability.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1948948",
      "database": "YugabyteDB",
      "date": "2024-08-06",
      "employment_period": "yugabyte-2021",
      "title": "Clustering Factor for YugabyteDB Index Scan: correlation between secondary indexes and the primary key",
      "url": "https://dev.to/yugabyte/clustering-factor-for-yugabytedb-index-scan-correlation-between-secondary-indexes-and-the-primary-key-1fia",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Clustering Factor for YugabyteDB Index Scan: correlation between secondary indexes and the primary key.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1950626",
      "database": "Amazon Aurora",
      "date": "2024-08-08",
      "employment_period": "yugabyte-2021",
      "title": "Different Roles for Read Replicas in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/psdifferent-roles-for-read-replicas-in-postgresql-and-yugabytedb-204c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Contrasts read-replica designs: traditional streaming replicas applying lagging WAL to shared buffers, Aurora-style storage-server WAL shipping, and YugabyteDB's asynchronous Raft read replicas.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1950626",
      "database": "PostgreSQL",
      "date": "2024-08-08",
      "employment_period": "yugabyte-2021",
      "title": "Different Roles for Read Replicas in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/psdifferent-roles-for-read-replicas-in-postgresql-and-yugabytedb-204c",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "inefficient"
      ],
      "evidence_excerpt": "When writing data, PostgreSQL does the minimum, which can leave the database in an inefficient state for queries.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1950626",
      "database": "YugabyteDB",
      "date": "2024-08-08",
      "employment_period": "yugabyte-2021",
      "title": "Different Roles for Read Replicas in PostgreSQL and YugabyteDB",
      "url": "https://dev.to/yugabyte/psdifferent-roles-for-read-replicas-in-postgresql-and-yugabytedb-204c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "benefit",
        "possesses stated advantages",
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The application uses **YugabyteDB as one global SQL database**, which is resilient to failure and can scale with elasticity and high availability without provisioning idle resources on a standby instance.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:1958146",
      "database": "Oracle Database",
      "date": "2024-08-15",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Statement SQL for reducing write latency in YugabyteDB (and PostgreSQL alternative to INSERT ALL)",
      "url": "https://dev.to/yugabyte/multi-statement-sql-for-reducing-write-latency-in-yugabytedb-and-postgresql-alternative-to-insert-all-4op3",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is an excellent equivalent to the Oracle INSERT ALL statement.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1958146",
      "database": "PostgreSQL",
      "date": "2024-08-15",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Statement SQL for reducing write latency in YugabyteDB (and PostgreSQL alternative to INSERT ALL)",
      "url": "https://dev.to/yugabyte/multi-statement-sql-for-reducing-write-latency-in-yugabytedb-and-postgresql-alternative-to-insert-all-4op3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Single SQL Statement with Common Table Expressions Thanks to the PostgreSQL powerful WITH clause, I can write the insert statements as Common Table Expression (CTE): ```sql yugabyte=# with i1 as ( insert into demo1(value) values ('Bonjour') ), i2 as ( insert into demo2(value) values ('Ciao') ), i3 as ( insert into demo3(value) values ('Grüezi') ) select; -- (1 row) Time: 418.613 ms ``` With this statement, I can i",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1958146",
      "database": "YugabyteDB",
      "date": "2024-08-15",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Statement SQL for reducing write latency in YugabyteDB (and PostgreSQL alternative to INSERT ALL)",
      "url": "https://dev.to/yugabyte/multi-statement-sql-for-reducing-write-latency-in-yugabytedb-and-postgresql-alternative-to-insert-all-4op3",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "fast",
        "faster",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Multi-Statement SQL for reducing write latency in YugabyteDB (and PostgreSQL alternative to INSERT ALL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1968361",
      "database": "Oracle Database",
      "date": "2024-08-21",
      "employment_period": "yugabyte-2021",
      "title": "Implementing “Get or Create” in YugabyteDB (or PostgreSQL)",
      "url": "https://dev.to/yugabyte/implementing-get-or-create-in-yugabytedb-or-postgresql-1p3e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Note that this works only with databases that allow Data-Modifying Statements in WITH like **PostgreSQL** or **compatible** (Oracle Database allows only SELECT statements).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1968361",
      "database": "PostgreSQL",
      "date": "2024-08-21",
      "employment_period": "yugabyte-2021",
      "title": "Implementing “Get or Create” in YugabyteDB (or PostgreSQL)",
      "url": "https://dev.to/yugabyte/implementing-get-or-create-in-yugabytedb-or-postgresql-1p3e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Implementing “Get or Create” in YugabyteDB (or PostgreSQL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1968361",
      "database": "YugabyteDB",
      "date": "2024-08-21",
      "employment_period": "yugabyte-2021",
      "title": "Implementing “Get or Create” in YugabyteDB (or PostgreSQL)",
      "url": "https://dev.to/yugabyte/implementing-get-or-create-in-yugabytedb-or-postgresql-1p3e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Implementing “Get or Create” in YugabyteDB (or PostgreSQL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1975447",
      "database": "YugabyteDB",
      "date": "2024-08-27",
      "employment_period": "yugabyte-2021",
      "title": "Physically isolating tenants with tablespaces and smart drivers in YugabyteDB",
      "url": "https://dev.to/yugabyte/physically-isolating-tenants-with-tablespaces-and-smart-drivers-in-yugabytedb-22e9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Physically isolating tenants with tablespaces and smart drivers in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984339",
      "database": "YugabyteDB",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "🧵10 Facts About YugabyteDB: Misconceptions Debunked",
      "url": "https://dev.to/yugabyte/10-facts-about-yugabytedb-misconceptions-debunked-4ee4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "🧵10 Facts About YugabyteDB: Misconceptions Debunked.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984340",
      "database": "CockroachDB",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Unique PostgreSQL-compatible Distributed SQL database",
      "url": "https://dev.to/yugabyte/unique-postgresql-compatible-distributed-sql-database-2jc1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "pgbench: error: query failed: ERROR: unsupported binary operator: <decimal> + <int> (returning <int>) pgbench: detail: Query was: insert into pgbench_tellers(tid,bid,tbalance) select tid, (tid - 1) / 10 + 1, 0 from generate_series(1, 10) as tid cockroachdb=> ``` Running a simple `\\d` command in `psql` fails: ```sql psql (16.2, server 13.0.0) SSL connection (protocol: TLSv1.3, cipher: TLS_AES_128_GCM_SHA256, compressi",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984340",
      "database": "PostgreSQL",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Unique PostgreSQL-compatible Distributed SQL database",
      "url": "https://dev.to/yugabyte/unique-postgresql-compatible-distributed-sql-database-2jc1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unique PostgreSQL-compatible Distributed SQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984340",
      "database": "YugabyteDB",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Unique PostgreSQL-compatible Distributed SQL database",
      "url": "https://dev.to/yugabyte/unique-postgresql-compatible-distributed-sql-database-2jc1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows that 42 times one divided by two returns zero in both PostgreSQL and YugabyteDB because YugabyteDB reuses the same C integer-division code, unlike other merely wire-compatible databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984341",
      "database": "YugabyteDB",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Pessimistic locking, Read Committed, and all Isolation Levels",
      "url": "https://dev.to/yugabyte/pessimistic-locking-read-committed-and-all-isolation-levels-3n31",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows YugabyteDB's Read Committed isolation creating an implicit savepoint per statement to transparently restart on conflict, needing the read-committed flag and wait queues both enabled.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984344",
      "database": "PostgreSQL",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Most Complete Auto-Sharding and Partitioning Strategies",
      "url": "https://dev.to/yugabyte/most-complete-auto-sharding-and-partitioning-strategies-3f5b",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains how YugabyteDB combines automatic tablet sharding with PostgreSQL declarative range, list, and hash partitioning, mapping partitions to tablespaces for regional data placement.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984344",
      "database": "YugabyteDB",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Most Complete Auto-Sharding and Partitioning Strategies",
      "url": "https://dev.to/yugabyte/most-complete-auto-sharding-and-partitioning-strategies-3f5b",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains how YugabyteDB combines automatic tablet sharding with PostgreSQL declarative range, list, and hash partitioning, mapping partitions to tablespaces for regional data placement.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984345",
      "database": "Cassandra",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Linearly Scalable Architecture with Separation of Concern",
      "url": "https://dev.to/yugabyte/linearly-scalable-architecture-with-separation-of-concern-44ng",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In addition to the SQL one, called YSQL, and using PostgreSQL, YugabyteDB provides a Cassandra-like API called YCQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984345",
      "database": "PostgreSQL",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Linearly Scalable Architecture with Separation of Concern",
      "url": "https://dev.to/yugabyte/linearly-scalable-architecture-with-separation-of-concern-44ng",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Describes YugabyteDB's two logical layers, a stateless PostgreSQL-based query layer and a sharded storage layer, which can run together or be split onto dedicated query-only and storage-only nodes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984345",
      "database": "YugabyteDB",
      "date": "2024-09-02",
      "employment_period": "yugabyte-2021",
      "title": "Linearly Scalable Architecture with Separation of Concern",
      "url": "https://dev.to/yugabyte/linearly-scalable-architecture-with-separation-of-concern-44ng",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Describes YugabyteDB's two logical layers, a stateless PostgreSQL-based query layer and a sharded storage layer, which can run together or be split onto dedicated query-only and storage-only nodes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984347",
      "database": "YugabyteDB",
      "date": "2024-09-05",
      "employment_period": "yugabyte-2021",
      "title": "Fault Tolerance with Raft and no Single Point of Failure",
      "url": "https://dev.to/yugabyte/fault-tolerance-with-raft-and-no-single-point-of-failure-4k01",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The yb-tservers in YugabyteDB play a pivotal role, handling both query processing and data storage in a linearly scalable manner.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984348",
      "database": "PostgreSQL",
      "date": "2024-09-05",
      "employment_period": "yugabyte-2021",
      "title": "Batching and Push-Downs to Distribute with High-Performance reads and writes",
      "url": "https://dev.to/yugabyte/batching-and-push-downs-to-distribute-with-high-performance-reads-and-writes-4ip4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Being PostgreSQL-compatible makes it easy, given PostgreSQL's extensive SQL features, and being a fork rather than an extension allows YugabyteDB optimizations in any part of the code.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984348",
      "database": "YugabyteDB",
      "date": "2024-09-05",
      "employment_period": "yugabyte-2021",
      "title": "Batching and Push-Downs to Distribute with High-Performance reads and writes",
      "url": "https://dev.to/yugabyte/batching-and-push-downs-to-distribute-with-high-performance-reads-and-writes-4ip4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Demonstrates YugabyteDB pushing an inlined SQL function's filter, a fetch-first-5-rows limit, and a nested loop join condition down to storage instead of transferring ten thousand rows upward.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984349",
      "database": "Cassandra",
      "date": "2024-09-06",
      "employment_period": "yugabyte-2021",
      "title": "SQL as fast as NoSQL, Bulk Loads, Covering and Partial Indexes",
      "url": "https://dev.to/yugabyte/tuning-distributed-db-sql-as-fast-as-nosql-bulk-loads-covering-and-partial-indexes-12p8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better",
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "- YCQL can be used with Cassandra applications and drivers, providing better performance, consistency, and features than Cassandra.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984349",
      "database": "PostgreSQL",
      "date": "2024-09-06",
      "employment_period": "yugabyte-2021",
      "title": "SQL as fast as NoSQL, Bulk Loads, Covering and Partial Indexes",
      "url": "https://dev.to/yugabyte/tuning-distributed-db-sql-as-fast-as-nosql-bulk-loads-covering-and-partial-indexes-12p8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL, Timescale, and InfluxDB are faster because they are deployed as a single pod, not protected from failures.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984349",
      "database": "YugabyteDB",
      "date": "2024-09-06",
      "employment_period": "yugabyte-2021",
      "title": "SQL as fast as NoSQL, Bulk Loads, Covering and Partial Indexes",
      "url": "https://dev.to/yugabyte/tuning-distributed-db-sql-as-fast-as-nosql-bulk-loads-covering-and-partial-indexes-12p8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Fast ingest for IoT with YSQL and YCQL Here is an independent benchmark for IoT ingest showing that YugabyteDB has a similar throughput with the PostgreSQL API and the Cassandra-like API: {% embed %} !Image description For this workload, YugabyteDB is the fastest distributed SQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984353",
      "database": "PostgreSQL",
      "date": "2024-09-08",
      "employment_period": "yugabyte-2021",
      "title": "RocksDB, Key-Value Storage, and Packed Rows: the backbone of YugabyteDB's distributed tablets flexibility",
      "url": "https://dev.to/yugabyte/rocksdb-key-value-storage-and-packed-rows-the-backbone-of-yugabytedbs-distributed-tablets-501j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "While some others have developed their own RocksDB in different programming languages, the original C++ implementation utilized by YugabyteDB remains the **most efficient** and best integrated with the **PostgreSQL** code in C.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984353",
      "database": "YugabyteDB",
      "date": "2024-09-08",
      "employment_period": "yugabyte-2021",
      "title": "RocksDB, Key-Value Storage, and Packed Rows: the backbone of YugabyteDB's distributed tablets flexibility",
      "url": "https://dev.to/yugabyte/rocksdb-key-value-storage-and-packed-rows-the-backbone-of-yugabytedbs-distributed-tablets-501j",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient",
        "flexible",
        "improved"
      ],
      "critical_signals": [],
      "evidence_excerpt": "RocksDB is adaptable to different workloads and has been significantly improved to provide a more flexible storage structure in YugabyteDB compared to traditional block storage in monolithic databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984359",
      "database": "YugabyteDB",
      "date": "2024-09-09",
      "employment_period": "yugabyte-2021",
      "title": "Fast PITR and MVCC reads with Key-Value LSM Tree",
      "url": "https://dev.to/yugabyte/fast-pitr-and-mvcc-reads-with-key-value-lsm-tree-585c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Shows how embedding the Hybrid Logical Clock commit time in YugabyteDB's RocksDB key lets a repeatable-read query fetch the right MVCC version after a hundred thousand concurrent updates to one row.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984360",
      "database": "PostgreSQL",
      "date": "2024-09-10",
      "employment_period": "yugabyte-2021",
      "title": "Asynch replication for Disaster Recovery, Read Replicas, and Change Data Capture",
      "url": "https://dev.to/yugabyte/asynch-replication-for-disaster-recovery-read-replicas-and-change-data-capture-50cb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "We’ve highlighted its PostgreSQL compatibility, advanced isolation levels, fault-tolerant Raft architecture, linear scalability, auto-sharding, performance optimizations, RocksDB-powered flexibility, and fast recovery features, demonstrating why YugabyteDB is a leading choice for distributed SQL databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1984360",
      "database": "YugabyteDB",
      "date": "2024-09-10",
      "employment_period": "yugabyte-2021",
      "title": "Asynch replication for Disaster Recovery, Read Replicas, and Change Data Capture",
      "url": "https://dev.to/yugabyte/asynch-replication-for-disaster-recovery-read-replicas-and-change-data-capture-50cb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "We’ve highlighted its PostgreSQL compatibility, advanced isolation levels, fault-tolerant Raft architecture, linear scalability, auto-sharding, performance optimizations, RocksDB-powered flexibility, and fast recovery features, demonstrating why YugabyteDB is a leading choice for distributed SQL databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1999563",
      "database": "PostgreSQL",
      "date": "2024-09-14",
      "employment_period": "yugabyte-2021",
      "title": "Write Buffering to Reduce Raft Consensus Latency in YugabyteDB",
      "url": "https://dev.to/yugabyte/write-buffering-to-reduce-raft-consensus-latency-in-yugabytedb-2dg6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB is an open-source distributed SQL database that is compatible with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1999563",
      "database": "YugabyteDB",
      "date": "2024-09-14",
      "employment_period": "yugabyte-2021",
      "title": "Write Buffering to Reduce Raft Consensus Latency in YugabyteDB",
      "url": "https://dev.to/yugabyte/write-buffering-to-reduce-raft-consensus-latency-in-yugabytedb-2dg6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "reduced cost, risk, or downtime",
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Write Buffering to Reduce Raft Consensus Latency in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2007838",
      "database": "PostgreSQL",
      "date": "2024-09-20",
      "employment_period": "yugabyte-2021",
      "title": "ERROR: index row size 3056 exceeds btree version 4 maximum 2704 for index",
      "url": "https://dev.to/yugabyte/error-index-row-size-3056-exceeds-btree-version-4-maximum-2704-for-index-4e8d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "improvement"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL 12 reduced the maximum size by 8 bytes to store extra metadata used by an improvement in splitting blocks with duplicate entries.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2007838",
      "database": "YugabyteDB",
      "date": "2024-09-20",
      "employment_period": "yugabyte-2021",
      "title": "ERROR: index row size 3056 exceeds btree version 4 maximum 2704 for index",
      "url": "https://dev.to/yugabyte/error-index-row-size-3056-exceeds-btree-version-4-maximum-2704-for-index-4e8d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## No page limits in YugabyteDB with LSM Tree With modern storage solutions like SSDs, where random reads are fast, indexes don't have to stick to a fixed block size structure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2018822",
      "database": "Oracle Database",
      "date": "2024-09-30",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Connection Manager: a Database Resident Connection Pool with Shared Processes",
      "url": "https://dev.to/yugabyte/yugabytedb-connection-manager-introduction-to-the-database-resident-connection-pool-2ap",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "To address these problems, Oracle Database has introduced several features, such as Shared Servers (MTS), Database Resident Connection Pool (DRCP), and an external connection manager (CMAN).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2018822",
      "database": "PostgreSQL",
      "date": "2024-09-30",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Connection Manager: a Database Resident Connection Pool with Shared Processes",
      "url": "https://dev.to/yugabyte/yugabytedb-connection-manager-introduction-to-the-database-resident-connection-pool-2ap",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "Explains why PostgreSQL's process-per-connection model wastes resources on idle backends and how YugabyteDB's database-resident Connection Manager differs from external poolers like PgBouncer.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2018822",
      "database": "YugabyteDB",
      "date": "2024-09-30",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB Connection Manager: a Database Resident Connection Pool with Shared Processes",
      "url": "https://dev.to/yugabyte/yugabytedb-connection-manager-introduction-to-the-database-resident-connection-pool-2ap",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB Connection Manager: a Database Resident Connection Pool with Shared Processes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2020742",
      "database": "YugabyteDB",
      "date": "2024-09-30",
      "employment_period": "yugabyte-2021",
      "title": "Maintaining Throughput With Less Physical Connections",
      "url": "https://dev.to/yugabyte/maintaining-throughput-with-less-physical-connections-3f32",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Runs pgbench with 50 rate-limited clients against YugabyteDB, inspecting pg_stat_activity wait events to contrast backend process counts with and without the Connection Manager enabled.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2022240",
      "database": "YugabyteDB",
      "date": "2024-10-01",
      "employment_period": "yugabyte-2021",
      "title": "Frequent Re-Connections improved by Connection Manager",
      "url": "https://dev.to/yugabyte/frequent-re-connections-improved-by-connection-manager-e52",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Benchmarks YugabyteDB with pgbench, showing throughput fall from about 1550 to 20 transactions per second when reconnecting for every transaction instead of reusing one session.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2023039",
      "database": "PostgreSQL",
      "date": "2024-10-02",
      "employment_period": "yugabyte-2021",
      "title": "IN() Index Scan in PostgreSQL 17 and YugabyteDB LSM Tree",
      "url": "https://dev.to/yugabyte/in-index-scan-in-postgresql-17-and-yugabytedb-lsm-tree-jci",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "improved"
      ],
      "critical_signals": [],
      "evidence_excerpt": "```sql postgres=# select seq_scan, seq_tup_read, idx_scan, idx_tup_fetch from pg_stat_user_tables where relid='demo'::regclass ; seq_scan | seq_tup_read | idx_scan | idx_tup_fetch ----------+--------------+----------+--------------- 2 | 0 | 42 | 0 ``` This has been improved in PostgreSQL 17.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2023039",
      "database": "YugabyteDB",
      "date": "2024-10-02",
      "employment_period": "yugabyte-2021",
      "title": "IN() Index Scan in PostgreSQL 17 and YugabyteDB LSM Tree",
      "url": "https://dev.to/yugabyte/in-index-scan-in-postgresql-17-and-yugabytedb-lsm-tree-jci",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "IN() Index Scan in PostgreSQL 17 and YugabyteDB LSM Tree.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2024907",
      "database": "PostgreSQL",
      "date": "2024-10-04",
      "employment_period": "yugabyte-2021",
      "title": "pgSphere and Q3C on Distributed SQL",
      "url": "https://dev.to/yugabyte/pgsphere-and-q3c-on-distributed-sql-4mmg",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "efficient",
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "```sh cd /var/tmp wget tar -zxvf postgresql-11.22.tar.gz cd postgresql-11.22 ./configure make make install export PATH=$PATH:/usr/local/pgsql/bin ``` ### Step 4: Compiling and Installing Q3C Next, I installed Q3C, which allows for fast, efficient querying of celestial objects using Right Ascension (RA) and Declination (DEC).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2024907",
      "database": "YugabyteDB",
      "date": "2024-10-04",
      "employment_period": "yugabyte-2021",
      "title": "pgSphere and Q3C on Distributed SQL",
      "url": "https://dev.to/yugabyte/pgsphere-and-q3c-on-distributed-sql-4mmg",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "slower side of comparison"
      ],
      "evidence_excerpt": "Compiles PostgreSQL 11 from source inside an AlmaLinux 8 YugabyteDB container to build and install the pgSphere and Q3C extensions for spherical and astronomical queries.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2025685",
      "database": "YugabyteDB",
      "date": "2024-10-04",
      "employment_period": "yugabyte-2021",
      "title": "Native GLIBC instead of Linuxbrew since 2.21",
      "url": "https://dev.to/yugabyte/native-glibc-instead-of-linuxbrew-since-221-288h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Most use 'libicu', but here are the collations provided by GLIBC: ```sql yugabyte=# select collname from pg_collation where collprovider = 'c'; collname ------------ C POSIX ucs_basic en_US.utf8 en_US ``` Jeremy Schneider has built an excellent tool to validate this: {% embed %}",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2026979",
      "database": "PostgreSQL",
      "date": "2024-10-06",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Semi Join, Unique-ify RHS, Materialized CTEs, and Rows Estimation",
      "url": "https://dev.to/yugabyte/postgresql-semi-join-unique-ify-rhs-materialized-ctes-and-rows-estimation-o2a",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In PostgreSQL 17, a new feature exposes the column statistics of the CTE so that the main block gets better estimations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2026979",
      "database": "YugabyteDB",
      "date": "2024-10-06",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Semi Join, Unique-ify RHS, Materialized CTEs, and Rows Estimation",
      "url": "https://dev.to/yugabyte/postgresql-semi-join-unique-ify-rhs-materialized-ctes-and-rows-estimation-o2a",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "improved"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This works because YugabyteDB improved the Index Scan with arrays (more about this, and another PostgreSQL 17 enhancement, in a previous post).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2028488",
      "database": "Amazon Aurora",
      "date": "2024-10-07",
      "employment_period": "yugabyte-2021",
      "title": "AWS re:Invent 2024 - Which sessions I'll try to attend.",
      "url": "https://dev.to/aws-heroes/aws-reinvent-2024-which-sessions-ill-try-to-attend-4cgb",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "great",
        "resilient",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "DAT411 | Dive deep into Amazon Aurora query plan management `Code talk | 4:00 PM - 5:00 PM PST | Wynn ` --- - If I can't get there, let's hear discussions about the latest features of Aurora DAT405 | Deep dive into Amazon Aurora and its innovations `Breakout session | 4:30 PM - 5:30 PM PST | Venetian` DAT311-R1 | Design secure and resilient relational database architectures on AWS `Chalk talk | 5:30 PM - 6:30 PM PST ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2028488",
      "database": "Amazon DynamoDB",
      "date": "2024-10-07",
      "employment_period": "yugabyte-2021",
      "title": "AWS re:Invent 2024 - Which sessions I'll try to attend.",
      "url": "https://dev.to/aws-heroes/aws-reinvent-2024-which-sessions-ill-try-to-attend-4cgb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DAT303-R | Making your Amazon Aurora cluster more resilient `Chalk talk | 8:30 AM - 9:30 AM PST | Caesars Forum` DAT404 | Advanced data modeling with Amazon DynamoDB `Breakout session | 9:00 AM - 10:00 AM PST | Venetian` --- - I may head to the southern part of the Strip.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2028488",
      "database": "YugabyteDB",
      "date": "2024-10-07",
      "employment_period": "yugabyte-2021",
      "title": "AWS re:Invent 2024 - Which sessions I'll try to attend.",
      "url": "https://dev.to/aws-heroes/aws-reinvent-2024-which-sessions-ill-try-to-attend-4cgb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DAT416 | Design scalable database solutions with Aurora Limitless Database `Chalk talk | 1:00 PM - 2:00 PM PST | Caesars Forum ` - But I'll probably go to Amey's talk about YugabyteDB multi-region: DAT207-S | Design patterns for multi-Region applications and data in AWS `Lightning talk | 1:00 PM - 1:20 PM PST | Venetian Expo ` --- - If I can book a seat, I'll attend a code talk on my favorite subject in SQL databases",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2029282",
      "database": "PostgreSQL",
      "date": "2024-10-07",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB as a Graph database with PuppyGraph",
      "url": "https://dev.to/yugabyte/yugabytedb-as-a-graph-database-with-puppygraph-4p6l",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Walks through a docker-compose deploying PuppyGraph beside YugabyteDB 2024.1, mapping relational tables to a graph model over Bolt and Gremlin ports instead of plain PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2029282",
      "database": "YugabyteDB",
      "date": "2024-10-07",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB as a Graph database with PuppyGraph",
      "url": "https://dev.to/yugabyte/yugabytedb-as-a-graph-database-with-puppygraph-4p6l",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "fast",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Elapsed time: 0.108s, rows: 2 ==>map[lang:java name:lop] ==>map[lang:java name:ripple] puppy-gremlin> ``` ### SQL Queries I refresh the local cache to check from `pg_stat_statements` that the queries are fast: !Image description ```sql yugabyte=# select total_time/calls as time, calls, substr(query,1,80) from pg_stat_statements order by 1 ; ``` !Image description ### Scale-Out YugabyteDB To add more nodes to the Yuga",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2034447",
      "database": "Oracle Database",
      "date": "2024-10-11",
      "employment_period": "yugabyte-2021",
      "title": "A brief example of an SQL serializable transaction",
      "url": "https://dev.to/aws-heroes/a-brief-example-of-a-serializable-transaction-with-ansiiso-sql-1a70",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Demonstrates Oracle Autonomous 23ai raising ORA-08177 'can't serialize access' on the very first statement of a serializable transaction with no concurrent activity at all.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2034447",
      "database": "PostgreSQL",
      "date": "2024-10-11",
      "employment_period": "yugabyte-2021",
      "title": "A brief example of an SQL serializable transaction",
      "url": "https://dev.to/aws-heroes/a-brief-example-of-a-serializable-transaction-with-ansiiso-sql-1a70",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## PostgreSQL (Serializable Snapshot Isolation Fail-on-Conflict) I have created the table using standard SQL code to be compatible with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2034447",
      "database": "YugabyteDB",
      "date": "2024-10-11",
      "employment_period": "yugabyte-2021",
      "title": "A brief example of an SQL serializable transaction",
      "url": "https://dev.to/aws-heroes/a-brief-example-of-a-serializable-transaction-with-ansiiso-sql-1a70",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "bad"
      ],
      "evidence_excerpt": "```sql yugabyte=*# insert into demo (message) values ('Bad luck I arrived too late'); INSERT 0 1 yugabyte=*# commit; COMMIT yugabyte=# select * from demo; id | message -----+----------------------------- 1 | I am the first row 101 | Bad luck I arrived too late (2 rows) ``` The result is consistent and didn't even receive a serializable error because YugabyteDB could detect the conflict early and serialize the transac",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2041843",
      "database": "Oracle Database",
      "date": "2024-10-17",
      "employment_period": "yugabyte-2021",
      "title": "You Probably Don't Need Serializable Isolation",
      "url": "https://dev.to/aws-heroes/you-probably-dont-need-serializable-isolation-131g",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Argues many applications don't need serializable isolation, showing explicit table locks or integrity constraints under Read Committed avoiding the same anomaly in Oracle, Postgres and YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2041843",
      "database": "PostgreSQL",
      "date": "2024-10-17",
      "employment_period": "yugabyte-2021",
      "title": "You Probably Don't Need Serializable Isolation",
      "url": "https://dev.to/aws-heroes/you-probably-dont-need-serializable-isolation-131g",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Argues many applications don't need serializable isolation, showing explicit table locks or integrity constraints under Read Committed avoiding the same anomaly in Oracle, Postgres and YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2041843",
      "database": "YugabyteDB",
      "date": "2024-10-17",
      "employment_period": "yugabyte-2021",
      "title": "You Probably Don't Need Serializable Isolation",
      "url": "https://dev.to/aws-heroes/you-probably-dont-need-serializable-isolation-131g",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Argues many applications don't need serializable isolation, showing explicit table locks or integrity constraints under Read Committed avoiding the same anomaly in Oracle, Postgres and YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1909257",
      "database": "Oracle Database",
      "date": "2024-10-18",
      "employment_period": "yugabyte-2021",
      "title": "The Doctor's On-Call Shift example and a Normalized Relational Schema to Avoid Write Skew",
      "url": "https://dev.to/yugabyte/the-doctors-on-call-shift-example-in-a-normalized-relational-schema-to-avoid-write-skew-4hhf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "**Oracle Database** does not support serializable transactions to avoid write skew and does not implement SELECT FOR SHARE.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1909257",
      "database": "PostgreSQL",
      "date": "2024-10-18",
      "employment_period": "yugabyte-2021",
      "title": "The Doctor's On-Call Shift example and a Normalized Relational Schema to Avoid Write Skew",
      "url": "https://dev.to/yugabyte/the-doctors-on-call-shift-example-in-a-normalized-relational-schema-to-avoid-write-skew-4hhf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "**YugabyteDB** implements all SQL isolation levels according to the ANSI/ISO definition and is compatible with PostgreSQL runtime behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:1909257",
      "database": "YugabyteDB",
      "date": "2024-10-18",
      "employment_period": "yugabyte-2021",
      "title": "The Doctor's On-Call Shift example and a Normalized Relational Schema to Avoid Write Skew",
      "url": "https://dev.to/yugabyte/the-doctors-on-call-shift-example-in-a-normalized-relational-schema-to-avoid-write-skew-4hhf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Internally, YugabyteDB used a range lock to avoid locking the whole table.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2057902",
      "database": "PostgreSQL",
      "date": "2024-10-25",
      "employment_period": "yugabyte-2021",
      "title": "SQL-92 in TPC Benchmarks: Are They Still Relevant?",
      "url": "https://dev.to/aws-heroes/sql-92-in-tpc-benchmarks-are-they-still-relevant-4ein",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 3,
      "critical_weight": 3,
      "mixed": true,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "faster",
        "improved"
      ],
      "critical_signals": [
        "inefficient",
        "slower side of comparison"
      ],
      "evidence_excerpt": "I was reading \"pg_duckdb beta release: Even faster analytics in Postgres\", which demonstrates that the execution of TPC-DS Query 01 is 1500 times faster on DuckDB compared to PostgreSQL.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2057902",
      "database": "YugabyteDB",
      "date": "2024-10-25",
      "employment_period": "yugabyte-2021",
      "title": "SQL-92 in TPC Benchmarks: Are They Still Relevant?",
      "url": "https://dev.to/aws-heroes/sql-92-in-tpc-benchmarks-are-they-still-relevant-4ein",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Reproduces a DuckDB benchmark claiming TPC-DS query 1 runs 1500x faster than Postgres, loading the same dsdgen data into YugabyteDB and questioning the SQL-92-style query lacking window functions.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2070239",
      "database": "PostgreSQL",
      "date": "2024-11-03",
      "employment_period": "yugabyte-2021",
      "title": "Speeding Up Foreign Key Constraints During Migrations",
      "url": "https://dev.to/yugabyte/speeding-up-foreign-key-constraints-during-migrations-3a9o",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I run the following Anti-Join to list the violations, and all is good if there's no row returned: ```sql postgres=# select * from demo2 left join demo0 on(demo2.demo0=demo0.id) where demo0.id is null ; id | demo0 | id ----+-------+---- (0 rows) ``` You can use either the LEFT JOIN, NOT IN, or NOT EXISTS clause, but it is crucial to examine the execution plan.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2081056",
      "database": "YugabyteDB",
      "date": "2024-11-07",
      "employment_period": "yugabyte-2021",
      "title": "What's behind the Call Home option?",
      "url": "https://dev.to/yugabyte/whats-behind-the-call-home-option-2cl3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Tracing TCP packets from a yugabyted container to diagnostics.yugabyte.com with tcpdump, after switching call_home.cc's URL to HTTP, reveals what diagnostic data --callhome transmits.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2093624",
      "database": "YugabyteDB",
      "date": "2024-11-11",
      "employment_period": "yugabyte-2021",
      "title": "Starting a YugabyteDB lab cluster with AWS CLI",
      "url": "https://dev.to/yugabyte/starting-a-yugabytedb-lab-cluster-with-aws-cli-47bj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Starting a YugabyteDB lab cluster with AWS CLI.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:alohe",
      "database": "MongoDB",
      "date": "2024-11-11",
      "employment_period": "yugabyte-2021",
      "title": "SQL Alone Isn’t Enough: Why Modern Applications Need More Than Just SQL",
      "url": "https://www.linkedin.com/pulse/sql-alone-isnt-enough-why-modern-applications-need-more-franck-pachot-alohe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Other solutions include MongoDB-compatible APIs, such as the Oracle Database API for MongoDB , FerretDB , or Pongo , alongside other document-based models like Oracle's SODA and JSON-Relational Duality Views .",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:alohe",
      "database": "Oracle Database",
      "date": "2024-11-11",
      "employment_period": "yugabyte-2021",
      "title": "SQL Alone Isn’t Enough: Why Modern Applications Need More Than Just SQL",
      "url": "https://www.linkedin.com/pulse/sql-alone-isnt-enough-why-modern-applications-need-more-franck-pachot-alohe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Other solutions include MongoDB-compatible APIs, such as the Oracle Database API for MongoDB , FerretDB , or Pongo , alongside other document-based models like Oracle's SODA and JSON-Relational Duality Views .",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:alohe",
      "database": "PostgreSQL",
      "date": "2024-11-11",
      "employment_period": "yugabyte-2021",
      "title": "SQL Alone Isn’t Enough: Why Modern Applications Need More Than Just SQL",
      "url": "https://www.linkedin.com/pulse/sql-alone-isnt-enough-why-modern-applications-need-more-franck-pachot-alohe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The resurgence of SQL databases, like open-source PostgreSQL-compatible services such as YugabyteDB, provides developers with many tools, extensions, and compatibility with emerging technologies, giving them more choices than ever.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:alohe",
      "database": "YugabyteDB",
      "date": "2024-11-11",
      "employment_period": "yugabyte-2021",
      "title": "SQL Alone Isn’t Enough: Why Modern Applications Need More Than Just SQL",
      "url": "https://www.linkedin.com/pulse/sql-alone-isnt-enough-why-modern-applications-need-more-franck-pachot-alohe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The resurgence of SQL databases, like open-source PostgreSQL-compatible services such as YugabyteDB, provides developers with many tools, extensions, and compatibility with emerging technologies, giving them more choices than ever.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2104024",
      "database": "Amazon Aurora",
      "date": "2024-11-14",
      "employment_period": "yugabyte-2021",
      "title": "100k Write IOPS in Aurora t3.medium ?",
      "url": "https://dev.to/aws-heroes/100k-write-iops-in-aurora-t3medium--365j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "100k Write IOPS in Aurora t3.medium ?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2104024",
      "database": "PostgreSQL",
      "date": "2024-11-14",
      "employment_period": "yugabyte-2021",
      "title": "100k Write IOPS in Aurora t3.medium ?",
      "url": "https://dev.to/aws-heroes/100k-write-iops-in-aurora-t3medium--365j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Same table with two indexes To understand better, I've run a second example with the same table but two additional indexes: a primary key and a secondary index: ```sql drop table demo; create table demo ( id bigserial primary key, value int ); create index on demo(value); ``` As expected, the throughput is lower because there's more work to do to maintain the indexes: ```sql postgres=> \\!",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2104024",
      "database": "YugabyteDB",
      "date": "2024-11-14",
      "employment_period": "yugabyte-2021",
      "title": "100k Write IOPS in Aurora t3.medium ?",
      "url": "https://dev.to/aws-heroes/100k-write-iops-in-aurora-t3medium--365j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB can provide 800k IOPS, given its horizontal scalability, but that was not necessary here.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2104010",
      "database": "PostgreSQL",
      "date": "2024-11-15",
      "employment_period": "yugabyte-2021",
      "title": "blog yb Covering Indexes: add columns in the Key or in Include?",
      "url": "https://dev.to/franckpachot/blog-yb-covering-indexes-add-columns-in-the-key-or-in-include-346n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The PostgreSQL table and index access methods provide only insert and delete but no update.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2104010",
      "database": "YugabyteDB",
      "date": "2024-11-15",
      "employment_period": "yugabyte-2021",
      "title": "blog yb Covering Indexes: add columns in the Key or in Include?",
      "url": "https://dev.to/franckpachot/blog-yb-covering-indexes-add-columns-in-the-key-or-in-include-346n",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB can do better by supporting updates in the LSM Tree.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2108912",
      "database": "Oracle Database",
      "date": "2024-11-19",
      "employment_period": "yugabyte-2021",
      "title": "Achieving Precise Clock Synchronization on AWS",
      "url": "https://www.yugabyte.com/blog/aws-clock-synchronization/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed databases like YugabyteDB must preserve real event ordering across independent nodes without one shared clock, unlike Oracle's System Change Number or TiDB's TimeStamp Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2108912",
      "database": "PostgreSQL",
      "date": "2024-11-19",
      "employment_period": "yugabyte-2021",
      "title": "Achieving Precise Clock Synchronization on AWS",
      "url": "https://www.yugabyte.com/blog/aws-clock-synchronization/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "```sh curl -Ls | tar xzvf - sudo dnf install -y python39 yugabyte-2.23.1.0/bin/yugabyted start --enhance_time_sync_via_clockbound --advertise_address=$(hostname) ``` It detects the correct configuration of ClockBound: !Image description I use the `psql` shipped with YugabyteDB to run PostgreSQL statements: ``` PGHOST=$(hostname) ./yugabyte-2.23.1.0/bin/ysqlsh ``` Here is what I've used to test the benefits of using C",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2108912",
      "database": "YugabyteDB",
      "date": "2024-11-19",
      "employment_period": "yugabyte-2021",
      "title": "Achieving Precise Clock Synchronization on AWS",
      "url": "https://www.yugabyte.com/blog/aws-clock-synchronization/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed databases like YugabyteDB must preserve real event ordering across independent nodes without one shared clock, unlike Oracle's System Change Number or TiDB's TimeStamp Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2117474",
      "database": "Amazon Aurora",
      "date": "2024-11-24",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Creation",
      "url": "https://dev.to/aws-heroes/aurora-limitless-creation-5d0i",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Additional standbys can be provisioned for faster failover and serving stale reads, and Aurora Limitless recovers the Two-Phase Commit pending transactions.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2117474",
      "database": "PostgreSQL",
      "date": "2024-11-24",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Creation",
      "url": "https://dev.to/aws-heroes/aurora-limitless-creation-5d0i",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "named source of disadvantages"
      ],
      "evidence_excerpt": "Announced last year at re:Invent 2023, Aurora Limitless (PostgreSQL compatible) is available in preview.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2117475",
      "database": "Amazon Aurora",
      "date": "2024-11-24",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Connection",
      "url": "https://dev.to/aws-heroes/aurora-limitless-connection-4i3a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless - Connection.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2117475",
      "database": "PostgreSQL",
      "date": "2024-11-24",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Connection",
      "url": "https://dev.to/aws-heroes/aurora-limitless-connection-4i3a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless exposes writer, reader, and shard-group Route53 endpoints, but connecting to the plain 'postgres' database is rejected; only 'postgres_limitless' accepts client connections.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2114084",
      "database": "PostgreSQL",
      "date": "2024-11-25",
      "employment_period": "yugabyte-2021",
      "title": "No Gap Ordered Numbering in SQL: A Unique Index to Serialize In Read Committed",
      "url": "https://dev.to/yugabyte/no-gap-ordered-numbering-in-sql-a-unique-index-to-serialize-in-read-committed-mcf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is also why YugabyteDB is runtime-compatible with PostgreSQL, ensuring similar behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2114084",
      "database": "YugabyteDB",
      "date": "2024-11-25",
      "employment_period": "yugabyte-2021",
      "title": "No Gap Ordered Numbering in SQL: A Unique Index to Serialize In Read Committed",
      "url": "https://dev.to/yugabyte/no-gap-ordered-numbering-in-sql-a-unique-index-to-serialize-in-read-committed-mcf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is also why YugabyteDB is runtime-compatible with PostgreSQL, ensuring similar behavior.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2117598",
      "database": "Amazon Aurora",
      "date": "2024-11-25",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Sharded Table",
      "url": "https://dev.to/aws-heroes/aurora-limitless-sharded-table-4cbj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless - Sharded Table.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2117598",
      "database": "PostgreSQL",
      "date": "2024-11-25",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Sharded Table",
      "url": "https://dev.to/aws-heroes/aurora-limitless-sharded-table-4cbj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Before running a PostgreSQL-compatible DDL to create the table, I defined the sharded mode and the sharding key: ```sql postgres_limitless=> set rds_aurora.limitless_create_table_mode=sharded; SET postgres_limitless=> set rds_aurora.limitless_create_table_shard_key='{\"id\"}'; SET postgres_limitless=> \\timing on Timing is on.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2117604",
      "database": "Amazon Aurora",
      "date": "2024-11-25",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Single and Multi-Shard Scan",
      "url": "https://dev.to/aws-heroes/aurora-limitless-single-and-multi-shard-scan-7c7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless - Single and Multi-Shard Scan.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:33594",
      "database": "PostgreSQL",
      "date": "2024-11-25",
      "employment_period": "yugabyte-2021",
      "title": "Better Than PostgreSQL! In-Place Index Updates with YugabyteDB",
      "url": "https://www.yugabyte.com/blog/yugabytedb-in-place-index/",
      "source": "yugabyte",
      "evaluation": -1,
      "positive_weight": 2,
      "critical_weight": 4,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "better",
        "improvement"
      ],
      "critical_signals": [
        "limitation",
        "named source of disadvantages",
        "possesses stated disadvantages",
        "worse side of comparison"
      ],
      "evidence_excerpt": "Better Than PostgreSQL!",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:33594",
      "database": "YugabyteDB",
      "date": "2024-11-25",
      "employment_period": "yugabyte-2021",
      "title": "Better Than PostgreSQL! In-Place Index Updates with YugabyteDB",
      "url": "https://www.yugabyte.com/blog/yugabytedb-in-place-index/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "efficient",
        "overcomes stated disadvantages",
        "possesses stated advantages",
        "recommended",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "However, the introduction of in-place updates in YugabyteDB version 2.23.1 (preview) and 2024.2.1 (stable) has made this process more efficient and, where possible, avoids the delete-insert overhead.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2118557",
      "database": "Amazon Aurora",
      "date": "2024-11-26",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - SQL Limitations",
      "url": "https://dev.to/aws-heroes/aurora-limitless-sql-limitations-20if",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "limitation",
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "Aurora Limitless has the same limitation: no global indexes or unique constraints across multiple shards.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2118557",
      "database": "PostgreSQL",
      "date": "2024-11-26",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - SQL Limitations",
      "url": "https://dev.to/aws-heroes/aurora-limitless-sql-limitations-20if",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "``` This limitation arises from using PostgreSQL partitioning to shard the table.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2118660",
      "database": "Amazon Aurora",
      "date": "2024-11-26",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Resharding",
      "url": "https://dev.to/aws-heroes/aurora-limitless-resharding-39dl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless - Resharding.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2118768",
      "database": "Amazon Aurora",
      "date": "2024-11-27",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Reference Tables",
      "url": "https://dev.to/aws-heroes/aurora-limitless-reference-tables-1m9i",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless - Reference Tables.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2118806",
      "database": "Amazon Aurora",
      "date": "2024-11-28",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Collocation (and porting PgBench)",
      "url": "https://dev.to/aws-heroes/aurora-limitless-collocation-and-porting-pgbench-4jop",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "advantage"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Serverless simplifies sharding operations and offers a significant advantage over Citus: even though multi-shard transactions may not be optimal, they are ACID-compliant.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2118806",
      "database": "Oracle Database",
      "date": "2024-11-28",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Collocation (and porting PgBench)",
      "url": "https://dev.to/aws-heroes/aurora-limitless-collocation-and-porting-pgbench-4jop",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "It is usable for applications designed for sharding, a challenge not unique to Aurora, as Microsoft Citus and Oracle Sharding exhibit the same limitations.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2118806",
      "database": "PostgreSQL",
      "date": "2024-11-28",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Collocation (and porting PgBench)",
      "url": "https://dev.to/aws-heroes/aurora-limitless-collocation-and-porting-pgbench-4jop",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Running pgbench -i's table creation against Aurora Limitless fails with STORAGE PARAMETER errors, since fillfactor and similar PostgreSQL DDL options must be removed from the schema first.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2118810",
      "database": "Amazon Aurora",
      "date": "2024-11-29",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Global Consistency (ACID)",
      "url": "https://dev.to/aws-heroes/aurora-limitless-global-consistency-acid-1m62",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless - Global Consistency (ACID).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2118810",
      "database": "PostgreSQL",
      "date": "2024-11-29",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Global Consistency (ACID)",
      "url": "https://dev.to/aws-heroes/aurora-limitless-global-consistency-acid-1m62",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "With this, Aurora Limitless provides the same transaction semantics as PostgreSQL for Read Committed and Repeatable Read.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2128232",
      "database": "Amazon Aurora",
      "date": "2024-11-30",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Sequences",
      "url": "https://dev.to/aws-heroes/aurora-limitless-sequences-3b74",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora Limitless - Sequences.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2128232",
      "database": "PostgreSQL",
      "date": "2024-11-30",
      "employment_period": "yugabyte-2021",
      "title": "Aurora Limitless - Sequences",
      "url": "https://dev.to/aws-heroes/aurora-limitless-sequences-3b74",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "On a two-shard Aurora Limitless cluster running pgbench_history without a primary key, sequence-generated identifiers still behave predictably once a sharding layer sits under PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2128846",
      "database": "Oracle Database",
      "date": "2024-12-01",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB MVCC and Updates: columns vs. JSON",
      "url": "https://dev.to/yugabyte/yugabytedb-mvcc-and-updates-columns-vs-json-3ndh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle's undo tablespace or PostgreSQL's in-table row versions, YugabyteDB's LSM-tree stores each column's MVCC versions under keys with a descending timestamp suffix, repacked at compaction.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2128846",
      "database": "PostgreSQL",
      "date": "2024-12-01",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB MVCC and Updates: columns vs. JSON",
      "url": "https://dev.to/yugabyte/yugabytedb-mvcc-and-updates-columns-vs-json-3ndh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle's undo tablespace or PostgreSQL's in-table row versions, YugabyteDB's LSM-tree stores each column's MVCC versions under keys with a descending timestamp suffix, repacked at compaction.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2128846",
      "database": "YugabyteDB",
      "date": "2024-12-01",
      "employment_period": "yugabyte-2021",
      "title": "YugabyteDB MVCC and Updates: columns vs. JSON",
      "url": "https://dev.to/yugabyte/yugabytedb-mvcc-and-updates-columns-vs-json-3ndh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB MVCC and Updates: columns vs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2122071",
      "database": "Amazon Aurora",
      "date": "2024-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Amazon Aurora DSQL: Which PostgreSQL Service Should I Use on AWS ?",
      "url": "https://dev.to/aws-heroes/amazon-aurora-dsql-which-postgresql-service-should-i-use-on-aws--1598",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 17,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora DSQL: Which PostgreSQL Service Should I Use on AWS ?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2122071",
      "database": "Amazon DynamoDB",
      "date": "2024-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Amazon Aurora DSQL: Which PostgreSQL Service Should I Use on AWS ?",
      "url": "https://dev.to/aws-heroes/amazon-aurora-dsql-which-postgresql-service-should-i-use-on-aws--1598",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This service aims to have all the advantages of DynamoDB (no downtime, no upgrades, on-demand pricing) but with SQL features.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2122071",
      "database": "PostgreSQL",
      "date": "2024-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Amazon Aurora DSQL: Which PostgreSQL Service Should I Use on AWS ?",
      "url": "https://dev.to/aws-heroes/amazon-aurora-dsql-which-postgresql-service-should-i-use-on-aws--1598",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 19,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Compared with the other services, it provides higher PostgreSQL compatibility than the horizontally scalable services (Limitless and DSQL) while distributed to availability zones or regions like Aurora DSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2122071",
      "database": "YugabyteDB",
      "date": "2024-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Amazon Aurora DSQL: Which PostgreSQL Service Should I Use on AWS ?",
      "url": "https://dev.to/aws-heroes/amazon-aurora-dsql-which-postgresql-service-should-i-use-on-aws--1598",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Weighs RDS PostgreSQL, RDS Aurora, Aurora Serverless v2, Aurora Limitless, Aurora DSQL, self-managed EC2, and YugabyteDB against each other by their PostgreSQL compatibility depth and scaling model.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:33645",
      "database": "Oracle Database",
      "date": "2024-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Achieving Precise Clock Synchronization on AWS",
      "url": "https://www.yugabyte.com/blog/aws-clock-synchronization/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains why YugabyteDB combines a Lamport logical clock with EC2 physical time, instead of a single monotonic counter like Oracle's SCN, to order transactions without a central bottleneck.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:33645",
      "database": "PostgreSQL",
      "date": "2024-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Achieving Precise Clock Synchronization on AWS",
      "url": "https://www.yugabyte.com/blog/aws-clock-synchronization/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "curl -Ls | tar xzvf - sudo dnf install -y python39 yugabyte-2.23.1.0/bin/yugabyted start --enhance_time_sync_via_clockbound --advertise_address=$(hostname) It detects the correct configuration of ClockBound: I use the psql shipped with YugabyteDB to run PostgreSQL statements: PGHOST=$(hostname) ./yugabyte-2.23.1.0/bin/ysqlsh Here is what I’ve used to test the benefits of using ClockBound as a time source.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:33645",
      "database": "YugabyteDB",
      "date": "2024-12-03",
      "employment_period": "yugabyte-2021",
      "title": "Achieving Precise Clock Synchronization on AWS",
      "url": "https://www.yugabyte.com/blog/aws-clock-synchronization/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains why YugabyteDB combines a Lamport logical clock with EC2 physical time, instead of a single monotonic counter like Oracle's SCN, to order transactions without a central bottleneck.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2134736",
      "database": "Amazon Aurora",
      "date": "2024-12-07",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: Create a Serverless Cluster and Connect with PostgreSQL Client",
      "url": "https://dev.to/aws-heroes/aurora-dsql-create-a-serverless-cluster-and-connect-with-postgresql-client-51mc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora DSQL: Create a Serverless Cluster and Connect with PostgreSQL Client.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2134736",
      "database": "PostgreSQL",
      "date": "2024-12-07",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: Create a Serverless Cluster and Connect with PostgreSQL Client",
      "url": "https://dev.to/aws-heroes/aurora-dsql-create-a-serverless-cluster-and-connect-with-postgresql-client-51mc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora DSQL: Create a Serverless Cluster and Connect with PostgreSQL Client.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2145951",
      "database": "Amazon Aurora",
      "date": "2024-12-09",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL - Simple Inserts Workload from an AWS CloudShell",
      "url": "https://dev.to/aws-heroes/aurora-dsql-simple-inserts-from-an-aws-cloudshell-2kkd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora DSQL - Simple Inserts Workload from an AWS CloudShell.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2145951",
      "database": "PostgreSQL",
      "date": "2024-12-09",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL - Simple Inserts Workload from an AWS CloudShell",
      "url": "https://dev.to/aws-heroes/aurora-dsql-simple-inserts-from-an-aws-cloudshell-2kkd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "My first test of Amazon Aurora DSQL focuses on read and write latency using an existing Java application designed for a PostgreSQL-compatible database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2145951",
      "database": "YugabyteDB",
      "date": "2024-12-09",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL - Simple Inserts Workload from an AWS CloudShell",
      "url": "https://dev.to/aws-heroes/aurora-dsql-simple-inserts-from-an-aws-cloudshell-2kkd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Transactions in YugabyteDB are resilient to region failures, unlike Aurora DSQL, where transactions are rolled back in the event of a region failure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2150524",
      "database": "Amazon Aurora",
      "date": "2024-12-11",
      "employment_period": "yugabyte-2021",
      "title": "DynamoDB-style Limits for Predictable SQL Performance?",
      "url": "https://dev.to/aws-heroes/dynamodb-style-limits-for-predictable-performance-56b8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora DSQL needs only one synchronization per commit but can't flush unbounded-row DML in a single round; inserting a thousand YugabyteDB rows instead shows one 19.848ms flush for all writes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2150524",
      "database": "Amazon DynamoDB",
      "date": "2024-12-11",
      "employment_period": "yugabyte-2021",
      "title": "DynamoDB-style Limits for Predictable SQL Performance?",
      "url": "https://dev.to/aws-heroes/dynamodb-style-limits-for-predictable-performance-56b8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DynamoDB-style Limits for Predictable SQL Performance?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2150524",
      "database": "PostgreSQL",
      "date": "2024-12-11",
      "employment_period": "yugabyte-2021",
      "title": "DynamoDB-style Limits for Predictable SQL Performance?",
      "url": "https://dev.to/aws-heroes/dynamodb-style-limits-for-predictable-performance-56b8",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "I can insert a maximum of 10070 rows in my table in one transaction: ```sql postgres=> insert into demo (a) select generate_series(1,10000); INSERT 0 10000 Time: 253.437 ms postgres=> insert into demo (a) select generate_series(1,10070); INSERT 0 10070 Time: 249.032 ms postgres=> insert into demo (a) select generate_series(1,10071); ERROR: 54000: transaction row limit exceeded Time: 94.322 ms ``` I face the same limi",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2150524",
      "database": "YugabyteDB",
      "date": "2024-12-11",
      "employment_period": "yugabyte-2021",
      "title": "DynamoDB-style Limits for Predictable SQL Performance?",
      "url": "https://dev.to/aws-heroes/dynamodb-style-limits-for-predictable-performance-56b8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora DSQL needs only one synchronization per commit but can't flush unbounded-row DML in a single round; inserting a thousand YugabyteDB rows instead shows one 19.848ms flush for all writes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2151436",
      "database": "Amazon Aurora",
      "date": "2024-12-11",
      "employment_period": "yugabyte-2021",
      "title": "Joins, Scale, and Denormalization",
      "url": "https://dev.to/aws-heroes/joins-and-denormalization-3dan",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I received an excellent question following my previous blog post, asking if a lot of denormalization is required in Aurora DSQL: > will people be able to apply normalisation principles albeit within a micro service scope or still a lot of denormalization is required to achieve scale from this db?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2151436",
      "database": "YugabyteDB",
      "date": "2024-12-11",
      "employment_period": "yugabyte-2021",
      "title": "Joins, Scale, and Denormalization",
      "url": "https://dev.to/aws-heroes/joins-and-denormalization-3dan",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I will later compare this with YugabyteDB to illustrate how a Distributed SQL database can leverage the Nested Loop by pushing down the join filter, thereby avoiding performing one loop for each row.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2155442",
      "database": "Amazon Aurora",
      "date": "2024-12-13",
      "employment_period": "yugabyte-2021",
      "title": "Optimistic Concurrency Control: Alice and Bob Couldn't Sit Together 🙁",
      "url": "https://dev.to/aws-heroes/optimistic-concurrency-control-alice-and-bob-couldnt-sit-together-5bh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Alice and Bob try to book adjacent theater seats from a seat_row/seat_number table; tests on YugabyteDB's locking versus Aurora DSQL's optimistic concurrency show different outcomes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2155442",
      "database": "PostgreSQL",
      "date": "2024-12-13",
      "employment_period": "yugabyte-2021",
      "title": "Optimistic Concurrency Control: Alice and Bob Couldn't Sit Together 🙁",
      "url": "https://dev.to/aws-heroes/optimistic-concurrency-control-alice-and-bob-couldnt-sit-together-5bh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This behavior is different from that of PostgreSQL and PostgreSQL-compatible databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2155442",
      "database": "YugabyteDB",
      "date": "2024-12-13",
      "employment_period": "yugabyte-2021",
      "title": "Optimistic Concurrency Control: Alice and Bob Couldn't Sit Together 🙁",
      "url": "https://dev.to/aws-heroes/optimistic-concurrency-control-alice-and-bob-couldnt-sit-together-5bh",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Alice starts a transaction: ```sql yugabyte=# begin transaction; BEGIN ``` Alice verifies that the seat is still free, intending to reserve it: ```sql yugabyte=*# select * from seats where (seat_row, seat_number)=('A', 5) for update ; seat_row | seat_number | booked_by ----------+-------------+----------- A | 5 | (1 row) ``` Great, the seat is still free.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2157413",
      "database": "Amazon Aurora",
      "date": "2024-12-15",
      "employment_period": "yugabyte-2021",
      "title": "Global Secondary Indexes in Distributed SQL",
      "url": "https://dev.to/aws-heroes/global-secondary-indexes-in-distributed-sql-database-47fm",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "advantage",
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In all cases, I like that Aurora DSQL shows the scan as Index Only Scan, which truly shows the performance benefit of primary key access._ --- On this table, I've run range queries with various sizes on \"id\" to get a primary index scan and on \"value\" to get a secondary index scan to read the other column from the table: ```sql select * from demo where id between 1 and 1; select * from demo where id between 1 and 2; .",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2157413",
      "database": "PostgreSQL",
      "date": "2024-12-15",
      "employment_period": "yugabyte-2021",
      "title": "Global Secondary Indexes in Distributed SQL",
      "url": "https://dev.to/aws-heroes/global-secondary-indexes-in-distributed-sql-database-47fm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "They use a different way to display this while showing a PostgreSQL-compatible output: - Aurora DSQL presents the primary key as if it is a covering index, which makes sense as it is an index that includes all columns of the table: ```sql dsql=> \\d demo Table \"public.demo\" Column | Type | Collation | Nullable | Default --------+---------+-----------+----------+--------- id | integer | | not null | value | integer | |",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2157413",
      "database": "YugabyteDB",
      "date": "2024-12-15",
      "employment_period": "yugabyte-2021",
      "title": "Global Secondary Indexes in Distributed SQL",
      "url": "https://dev.to/aws-heroes/global-secondary-indexes-in-distributed-sql-database-47fm",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "A GUC parameter controls this in YugabyteDB: ```sql yugabyte=> show yb_fetch_row_limit; yb_fetch_row_limit -------------------- 1024 (1 row) ``` It is not easy to see it as the reads are fast, but it is slightly visible for the secondary index when zooming around 1024 rows: !Image description I haven't noticed anything substantial suggesting a batch size for Aurora DSQL, and the preview version lacks further statisti",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2159062",
      "database": "Amazon Aurora",
      "date": "2024-12-16",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Region Distributed SQL Transaction Latency",
      "url": "https://dev.to/aws-heroes/multi-region-distributed-sql-transaction-latency-512n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Deployed identically across three AWS regions, Aurora DSQL's optimistic-concurrency, no-pre-commit-sync design is compared against YugabyteDB's preferred-region replication for transaction latency.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2159062",
      "database": "PostgreSQL",
      "date": "2024-12-16",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Region Distributed SQL Transaction Latency",
      "url": "https://dev.to/aws-heroes/multi-region-distributed-sql-transaction-latency-512n",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In this case, YugabyteDB looks faster, with PostgreSQL concurrency control behavior, even when the Raft leaders are remote.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2159062",
      "database": "YugabyteDB",
      "date": "2024-12-16",
      "employment_period": "yugabyte-2021",
      "title": "Multi-Region Distributed SQL Transaction Latency",
      "url": "https://dev.to/aws-heroes/multi-region-distributed-sql-transaction-latency-512n",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In this case, YugabyteDB looks faster, with PostgreSQL concurrency control behavior, even when the Raft leaders are remote.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2160860",
      "database": "PostgreSQL",
      "date": "2024-12-17",
      "employment_period": "yugabyte-2021",
      "title": "2024.2: Faster with Shared Memory Between PostgreSQL and TServer Layers",
      "url": "https://dev.to/yugabyte/20242-faster-with-shared-memory-between-postgresql-and-tserver-layers-5fg0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "2024.2: Faster with Shared Memory Between PostgreSQL and TServer Layers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2160860",
      "database": "YugabyteDB",
      "date": "2024-12-17",
      "employment_period": "yugabyte-2021",
      "title": "2024.2: Faster with Shared Memory Between PostgreSQL and TServer Layers",
      "url": "https://dev.to/yugabyte/20242-faster-with-shared-memory-between-postgresql-and-tserver-layers-5fg0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB 2024.2 makes pg_client_use_shared_memory generally available by default, replacing network calls between the PostgreSQL query layer and DocDB TServer with shared-memory buffers in tests.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2165908",
      "database": "Amazon Aurora",
      "date": "2024-12-19",
      "employment_period": "yugabyte-2021",
      "title": "Referential integrity In The Absence Of Foreign Key",
      "url": "https://dev.to/aws-heroes/referential-integrity-in-the-absence-of-foreign-key-3mbd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Since Aurora DSQL supports neither foreign keys nor serializable isolation, only application-side checks with careful concurrency handling remain viable among four referential-integrity strategies.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2165908",
      "database": "MySQL",
      "date": "2024-12-19",
      "employment_period": "yugabyte-2021",
      "title": "Referential integrity In The Absence Of Foreign Key",
      "url": "https://dev.to/aws-heroes/referential-integrity-in-the-absence-of-foreign-key-3mbd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MySQL-compatible databases have often neglected referential integrity, similar to how MySQL has traditionally ignored foreign key declarations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2165908",
      "database": "PostgreSQL",
      "date": "2024-12-19",
      "employment_period": "yugabyte-2021",
      "title": "Referential integrity In The Absence Of Foreign Key",
      "url": "https://dev.to/aws-heroes/referential-integrity-in-the-absence-of-foreign-key-3mbd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In PostgreSQL-compatible databases, we may prefer using SELECT FOR SHARE rather than SELECT FOR UPDATE because multiple inserts for the same parent should be able to be processed concurrently.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2165908",
      "database": "YugabyteDB",
      "date": "2024-12-19",
      "employment_period": "yugabyte-2021",
      "title": "Referential integrity In The Absence Of Foreign Key",
      "url": "https://dev.to/aws-heroes/referential-integrity-in-the-absence-of-foreign-key-3mbd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Distributed SQL databases offering PostgreSQL-compatible concurrency control, such as YugabyteDB, support foreign keys._",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2180360",
      "database": "PostgreSQL",
      "date": "2024-12-29",
      "employment_period": "yugabyte-2021",
      "title": "More details in pg_locks for YugabyteDB",
      "url": "https://dev.to/yugabyte/more-information-in-pglocks-for-yugabytedb-vs-postgresql-7n8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "sleep 5 ; psql -ec '\\timing on' -c 'delete from demo' & sleep 5 select locktype, mode, granted , regexp_replace( ybdetails->>'transactionid' ,'[-0-9a-f]{32}' ,'','g') as txid , regexp_replace( ybdetails->>'blocked_by' ,'(\"[-0-9a-f]{32}|\"|]|\\[)','','g') as blockers , ybdetails->'keyrangedetails'->>'cols' as cols from pg_locks where relation='demo'::regclass order by blockers desc,txid, mode desc ; commit; ``` I querie",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2180360",
      "database": "YugabyteDB",
      "date": "2024-12-29",
      "employment_period": "yugabyte-2021",
      "title": "More details in pg_locks for YugabyteDB",
      "url": "https://dev.to/yugabyte/more-information-in-pglocks-for-yugabytedb-vs-postgresql-7n8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In contrast, YugabyteDB stores lock intents in a scalable and observable way.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2186347",
      "database": "Amazon Aurora",
      "date": "2025-01-02",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: How it Compares to YugabyteDB",
      "url": "https://www.yugabyte.com/blog/aurora-dsql-compared-to-yugabytedb",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 22,
      "positive_signals": [],
      "critical_signals": [
        "named source of disadvantages"
      ],
      "evidence_excerpt": "Aurora DSQL: How it Compares to YugabyteDB.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2186347",
      "database": "PostgreSQL",
      "date": "2025-01-02",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: How it Compares to YugabyteDB",
      "url": "https://www.yugabyte.com/blog/aurora-dsql-compared-to-yugabytedb",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 17,
      "positive_signals": [
        "overcomes stated disadvantages",
        "scalable"
      ],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "Connection management has always been problematic with the PostgreSQL process-per-connection model, and a scalable application requires different connection handling.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2186347",
      "database": "YugabyteDB",
      "date": "2025-01-02",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: How it Compares to YugabyteDB",
      "url": "https://www.yugabyte.com/blog/aurora-dsql-compared-to-yugabytedb",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora DSQL: How it Compares to YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:33701",
      "database": "Amazon Aurora",
      "date": "2025-01-02",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: How the Latest Distributed SQL Database Compares to YugabyteDB",
      "url": "https://www.yugabyte.com/blog/aurora-dsql-compared-to-yugabytedb/",
      "source": "yugabyte",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 15,
      "positive_signals": [],
      "critical_signals": [
        "named source of disadvantages"
      ],
      "evidence_excerpt": "Aurora DSQL: How the Latest Distributed SQL Database Compares to YugabyteDB.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:33701",
      "database": "PostgreSQL",
      "date": "2025-01-02",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: How the Latest Distributed SQL Database Compares to YugabyteDB",
      "url": "https://www.yugabyte.com/blog/aurora-dsql-compared-to-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "overcomes stated disadvantages",
        "scalable"
      ],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "Connection management has always been problematic with the PostgreSQL process-per-connection model, and a scalable application requires different connection handling.",
      "relation_aware": true
    },
    {
      "publication_id": "yugabyte:33701",
      "database": "YugabyteDB",
      "date": "2025-01-02",
      "employment_period": "yugabyte-2021",
      "title": "Aurora DSQL: How the Latest Distributed SQL Database Compares to YugabyteDB",
      "url": "https://www.yugabyte.com/blog/aurora-dsql-compared-to-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora DSQL: How the Latest Distributed SQL Database Compares to YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2186701",
      "database": "PostgreSQL",
      "date": "2025-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Index Filtering in PostgreSQL and YugabyteDB (Index Scan instead of Index Only Scan)",
      "url": "https://dev.to/yugabyte/index-filtering-in-postgresql-and-yugabytedb-1ck7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Index Filtering in PostgreSQL and YugabyteDB (Index Scan instead of Index Only Scan).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2186701",
      "database": "YugabyteDB",
      "date": "2025-01-03",
      "employment_period": "yugabyte-2021",
      "title": "Index Filtering in PostgreSQL and YugabyteDB (Index Scan instead of Index Only Scan)",
      "url": "https://dev.to/yugabyte/index-filtering-in-postgresql-and-yugabytedb-1ck7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Additionally, I will demonstrate that in some cases, YugabyteDB outperforms by filtering directly on the index entries, even during an Index Scan, and a smaller index can be good enough.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2194144",
      "database": "Amazon Aurora",
      "date": "2025-01-08",
      "employment_period": "yugabyte-2021",
      "title": "Large IntentsDB MemTable with Many Small SST Files",
      "url": "https://dev.to/yugabyte/large-intentsdb-memtable-with-many-small-sst-files-pjl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "**Aurora DSQL**, with Optimistic Concurrency Control, avoids this by storing the transaction intents locally and synchronizing only at commit.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2194144",
      "database": "Microsoft SQL Server",
      "date": "2025-01-08",
      "employment_period": "yugabyte-2021",
      "title": "Large IntentsDB MemTable with Many Small SST Files",
      "url": "https://dev.to/yugabyte/large-intentsdb-memtable-with-many-small-sst-files-pjl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Contrasts SQL Server's Lock Escalation under transaction-intent memory pressure against distributed databases storing intents in a large MemTable with many small SST files on disk.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2194144",
      "database": "Oracle Database",
      "date": "2025-01-08",
      "employment_period": "yugabyte-2021",
      "title": "Large IntentsDB MemTable with Many Small SST Files",
      "url": "https://dev.to/yugabyte/large-intentsdb-memtable-with-many-small-sst-files-pjl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle or PostgreSQL, YugabyteDB does not piggyback delayed cleanup onto the read workload, which is advantageous for performance predictability and the performance of read replicas.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2194144",
      "database": "PostgreSQL",
      "date": "2025-01-08",
      "employment_period": "yugabyte-2021",
      "title": "Large IntentsDB MemTable with Many Small SST Files",
      "url": "https://dev.to/yugabyte/large-intentsdb-memtable-with-many-small-sst-files-pjl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "**YugabyteDB** is PostgreSQL compatible, which requires sharing the transaction intents through the network using Raft consensus.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2194144",
      "database": "YugabyteDB",
      "date": "2025-01-08",
      "employment_period": "yugabyte-2021",
      "title": "Large IntentsDB MemTable with Many Small SST Files",
      "url": "https://dev.to/yugabyte/large-intentsdb-memtable-with-many-small-sst-files-pjl",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB was built for modern storage, SSD, where random reads are fast - this would not have been efficient with HDD.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2193108",
      "database": "Microsoft SQL Server",
      "date": "2025-01-12",
      "employment_period": "yugabyte-2021",
      "title": "Unique Index on NULL Values in SQL & NoSQL",
      "url": "https://dev.to/aws-heroes/unique-index-on-null-values-in-sql-nosql-34ej",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "- **Oracle** (and **SQL Server**) behave differently, but expression-based indexes can provide workarounds.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2193108",
      "database": "MongoDB",
      "date": "2025-01-12",
      "employment_period": "yugabyte-2021",
      "title": "Unique Index on NULL Values in SQL & NoSQL",
      "url": "https://dev.to/aws-heroes/unique-index-on-null-values-in-sql-nosql-34ej",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A telco call-record example compares three behaviors for unique indexes on NULL-or-missing values: MongoDB's document absence, PostgreSQL/YugabyteDB's SQL-standard NULL, and Oracle's variant.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2193108",
      "database": "Oracle Database",
      "date": "2025-01-12",
      "employment_period": "yugabyte-2021",
      "title": "Unique Index on NULL Values in SQL & NoSQL",
      "url": "https://dev.to/aws-heroes/unique-index-on-null-values-in-sql-nosql-34ej",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A telco call-record example compares three behaviors for unique indexes on NULL-or-missing values: MongoDB's document absence, PostgreSQL/YugabyteDB's SQL-standard NULL, and Oracle's variant.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2193108",
      "database": "PostgreSQL",
      "date": "2025-01-12",
      "employment_period": "yugabyte-2021",
      "title": "Unique Index on NULL Values in SQL & NoSQL",
      "url": "https://dev.to/aws-heroes/unique-index-on-null-values-in-sql-nosql-34ej",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A telco call-record example compares three behaviors for unique indexes on NULL-or-missing values: MongoDB's document absence, PostgreSQL/YugabyteDB's SQL-standard NULL, and Oracle's variant.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2193108",
      "database": "YugabyteDB",
      "date": "2025-01-12",
      "employment_period": "yugabyte-2021",
      "title": "Unique Index on NULL Values in SQL & NoSQL",
      "url": "https://dev.to/aws-heroes/unique-index-on-null-values-in-sql-nosql-34ej",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A telco call-record example compares three behaviors for unique indexes on NULL-or-missing values: MongoDB's document absence, PostgreSQL/YugabyteDB's SQL-standard NULL, and Oracle's variant.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2206900",
      "database": "YugabyteDB",
      "date": "2025-01-14",
      "employment_period": "yugabyte-2021",
      "title": "could not serialize access due to concurrent update",
      "url": "https://dev.to/yugabyte/could-not-serialize-access-due-to-concurrent-update-40na",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Explains YugabyteDB's 'could not serialize access' error by showing how read committed versus repeatable read/serializable isolation sets the consistent read-time snapshot differently.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2207456",
      "database": "PostgreSQL",
      "date": "2025-01-14",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL plan_cache_mode",
      "url": "https://dev.to/yugabyte/plancachemode-1jf9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL plan_cache_mode.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2207456",
      "database": "YugabyteDB",
      "date": "2025-01-14",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL plan_cache_mode",
      "url": "https://dev.to/yugabyte/plancachemode-1jf9",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "regression"
      ],
      "evidence_excerpt": "A final note: the five executions are hardcoded in PostgreSQL, but YugabyteDB made it configurable: ```sql List of configuration parameters Parameter | Value ----------------------------------------------+------- plan_cache_mode | auto yb_planner_custom_plan_for_partition_pruning | on yb_test_planner_custom_plan_threshold | 5 (3 rows) ``` It has a `test` in its name because the main reason is regression tests, where ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2218295",
      "database": "PostgreSQL",
      "date": "2025-01-17",
      "employment_period": "yugabyte-2021",
      "title": "Aggregates with NULL: count(), min(), max(), sum()",
      "url": "https://dev.to/yugabyte/null-arithmetic-and-aggregates-count-min-max-sum-5c95",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL does differently, and YugabyteDB is compatible with PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2218295",
      "database": "YugabyteDB",
      "date": "2025-01-17",
      "employment_period": "yugabyte-2021",
      "title": "Aggregates with NULL: count(), min(), max(), sum()",
      "url": "https://dev.to/yugabyte/null-arithmetic-and-aggregates-count-min-max-sum-5c95",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Because NULL means unknown rather than zero, arithmetic like x+y+z with one NULL operand becomes unknown in YugabyteDB, yet aggregates like sum() and count() are defined to ignore NULL inputs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2227624",
      "database": "Oracle Database",
      "date": "2025-01-20",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Synchronized Sequential Scans and LIMIT without an ORDER BY",
      "url": "https://dev.to/franckpachot/postgresql-synchronized-sequential-scans-and-limit-without-an-order-by-1kia",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database does the opposite: it tries to avoid synchronization and bypasses the shared buffer pool for large table full table scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2227624",
      "database": "PostgreSQL",
      "date": "2025-01-20",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL Synchronized Sequential Scans and LIMIT without an ORDER BY",
      "url": "https://dev.to/franckpachot/postgresql-synchronized-sequential-scans-and-limit-without-an-order-by-1kia",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "faster side of comparison"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL Synchronized Sequential Scans and LIMIT without an ORDER BY.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2231807",
      "database": "PostgreSQL",
      "date": "2025-01-22",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL 15 Compatibility in YugabyteDB 2.25: Top 15 Features!",
      "url": "https://www.yugabyte.com/blog/postgresql-15-compatibility-in-yugabytedb/",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "To compare, here was the plan in PostgreSQL 11: ```sql QUERY PLAN ----------------------------------------------------------------------------------------- Merge Append Sort Key: people_eu.name -> Index Scan using people_eu_pkey on people_eu Index Cond: (country = 'CH'::text) ``` ## Feature 5: Plan Cache Mode (PG12) With prepared statements, PostgreSQL starts with custom plans (optimized for each value) and can switc",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2231807",
      "database": "YugabyteDB",
      "date": "2025-01-22",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL 15 Compatibility in YugabyteDB 2.25: Top 15 Features!",
      "url": "https://www.yugabyte.com/blog/postgresql-15-compatibility-in-yugabytedb/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "benefit",
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Because the query planner knows that only one partition needs to be read, it skips those operations: ```sql yugabyte=> explain (costs off) select * from people where country='CH' order by name ; QUERY PLAN ----------------------------------------------------- Index Scan using people_eu_pkey on people_eu people Index Cond: (country = 'CH'::text) (2 rows) ``` This is an excellent benefit for YugabyteDB geo-partitioning",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2231411",
      "database": "Microsoft SQL Server",
      "date": "2025-01-24",
      "employment_period": "yugabyte-2021",
      "title": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB",
      "url": "https://dev.to/aws-heroes/indexing-for-not-equal-in-yugabytedb-postgresql-oracle-database-and-mongodb-25mo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2231411",
      "database": "MongoDB",
      "date": "2025-01-24",
      "employment_period": "yugabyte-2021",
      "title": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB",
      "url": "https://dev.to/aws-heroes/indexing-for-not-equal-in-yugabytedb-postgresql-oracle-database-and-mongodb-25mo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "However, `$ne` is not one of the supported partial index expressions in MongoDB 8.0 ```js mlab> db.demo.createIndex({ value: 1 } , { partialFilterExpression: { value: { $ne: 0 } } } ); Uncaught: MongoServerError[CannotCreateIndex]: Error in specification { partialFilterExpression: { value: { $ne: 0 } }, name: \"value_1\", key: { value: 1 }, v: 2 } :: caused by :: Expression not supported in partial index: $not value $e",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2231411",
      "database": "Oracle Database",
      "date": "2025-01-24",
      "employment_period": "yugabyte-2021",
      "title": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB",
      "url": "https://dev.to/aws-heroes/indexing-for-not-equal-in-yugabytedb-postgresql-oracle-database-and-mongodb-25mo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2231411",
      "database": "PostgreSQL",
      "date": "2025-01-24",
      "employment_period": "yugabyte-2021",
      "title": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB",
      "url": "https://dev.to/aws-heroes/indexing-for-not-equal-in-yugabytedb-postgresql-oracle-database-and-mongodb-25mo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [
        "worse side of comparison"
      ],
      "evidence_excerpt": "Filtering WHERE value != 0 needs an index reading the two ranges around the excluded value; YugabyteDB's LSM-tree skip scan handles this better than most PostgreSQL, Oracle, or SQL Server setups.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2231411",
      "database": "YugabyteDB",
      "date": "2025-01-24",
      "employment_period": "yugabyte-2021",
      "title": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB",
      "url": "https://dev.to/aws-heroes/indexing-for-not-equal-in-yugabytedb-postgresql-oracle-database-and-mongodb-25mo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better side of comparison"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Indexing for NOT EQUAL (<>,!=) in YugabyteDB, PostgreSQL, Oracle Database, SQL Server, and MongoDB.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2241892",
      "database": "MongoDB",
      "date": "2025-01-26",
      "employment_period": "yugabyte-2021",
      "title": "ESR (Equality, Sort, Range) rule applied to YugabyteDB and PostgreSQL indexes",
      "url": "https://dev.to/yugabyte/esr-equality-sort-range-rule-for-yugabytedb-indexes-fi4",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "**TL;DR**: To make developers' lives easier, MongoDB has documented a simple rule for creating an efficient index: the The ESR (Equality, Sort, Range) Rule.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2241892",
      "database": "PostgreSQL",
      "date": "2025-01-26",
      "employment_period": "yugabyte-2021",
      "title": "ESR (Equality, Sort, Range) rule applied to YugabyteDB and PostgreSQL indexes",
      "url": "https://dev.to/yugabyte/esr-equality-sort-range-rule-for-yugabytedb-indexes-fi4",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "advantage",
        "good",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I responded that the composite index was a good approach for PostgreSQL but, given the filtering selectivity, the column order was not, and I provided an example: While I’ve written a comprehensive article on Improving Your SQL Indexing, and MongoDB published a more developer-friendly explanation of the same principle, The ESR (Equality, Sort, Range) Rule, that originates from Optimizing MongoDB Compound Indexes by A",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2241892",
      "database": "YugabyteDB",
      "date": "2025-01-26",
      "employment_period": "yugabyte-2021",
      "title": "ESR (Equality, Sort, Range) rule applied to YugabyteDB and PostgreSQL indexes",
      "url": "https://dev.to/yugabyte/esr-equality-sort-range-rule-for-yugabytedb-indexes-fi4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "ESR (Equality, Sort, Range) rule applied to YugabyteDB and PostgreSQL indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2247779",
      "database": "PostgreSQL",
      "date": "2025-01-29",
      "employment_period": "yugabyte-2021",
      "title": "set parameter if exists",
      "url": "https://dev.to/yugabyte/set-parameter-if-exists-3402",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "An UPDATE against pg_settings filtered by version() LIKE '%-YB-%' sets a YugabyteDB-only parameter like yb_use_hash_splitting_by_default alongside application_name, harmless on plain PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2247779",
      "database": "YugabyteDB",
      "date": "2025-01-29",
      "employment_period": "yugabyte-2021",
      "title": "set parameter if exists",
      "url": "https://dev.to/yugabyte/set-parameter-if-exists-3402",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "An UPDATE against pg_settings filtered by version() LIKE '%-YB-%' sets a YugabyteDB-only parameter like yb_use_hash_splitting_by_default alongside application_name, harmless on plain PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2250377",
      "database": "PostgreSQL",
      "date": "2025-01-30",
      "employment_period": "yugabyte-2021",
      "title": "⛔ ORDER BY in Subquery",
      "url": "https://dev.to/yugabyte/order-by-in-subquery-3hop",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "If you were unaware that you had a bug in your query, you might think that the new database is not PostgreSQL compatible: _it was working before and is not working anymore._ No, **it was not working before**.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2250377",
      "database": "YugabyteDB",
      "date": "2025-01-30",
      "employment_period": "yugabyte-2021",
      "title": "⛔ ORDER BY in Subquery",
      "url": "https://dev.to/yugabyte/order-by-in-subquery-3hop",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "benefit",
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "You can migrate to another database, like YugabyteDB, to benefit from resilience, elasticity, and better storage.",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:33738",
      "database": "PostgreSQL",
      "date": "2025-01-31",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL 15 Compatibility in YugabyteDB 2.25: Top 15 Features!",
      "url": "https://www.yugabyte.com/blog/postgresql-15-compatibility-in-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "To compare, here was the plan in PostgreSQL 11: QUERY PLAN ----------------------------------------------------------------------------------------- Merge Append Sort Key: people_eu.name -> Index Scan using people_eu_pkey on people_eu Index Cond: (country = 'CH'::text) Feature 5: Plan Cache Mode (PG12) With prepared statements, PostgreSQL starts with custom plans (optimized for each value) and can switch to a generic",
      "relation_aware": false
    },
    {
      "publication_id": "yugabyte:33738",
      "database": "YugabyteDB",
      "date": "2025-01-31",
      "employment_period": "yugabyte-2021",
      "title": "PostgreSQL 15 Compatibility in YugabyteDB 2.25: Top 15 Features!",
      "url": "https://www.yugabyte.com/blog/postgresql-15-compatibility-in-yugabytedb/",
      "source": "yugabyte",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "benefit",
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Because the query planner knows that only one partition needs to be read, it skips those operations: yugabyte=> explain (costs off) select * from people where country='CH' order by name ; QUERY PLAN ----------------------------------------------------- Index Scan using people_eu_pkey on people_eu people Index Cond: (country = 'CH'::text) (2 rows) This is an excellent benefit for YugabyteDB geo-partitioning and simpli",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2259454",
      "database": "YugabyteDB",
      "date": "2025-02-05",
      "employment_period": "yugabyte-2021",
      "title": "UUIDv7 in YugabyteDB",
      "url": "https://dev.to/yugabyte/uuidv7-in-yugabytedb-5ag7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "UUIDv7 in YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2263271",
      "database": "MongoDB",
      "date": "2025-02-06",
      "employment_period": "mongodb-2025",
      "title": "My Journey to NoSQL and Document Databases",
      "url": "https://dev.to/franckpachot/my-journey-to-nosql-and-document-databases-4hdg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Links to a LinkedIn announcement of the move into a Developer Advocate role at MongoDB, marking a personal shift from relational databases toward NoSQL and document-database work.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:e4shf",
      "database": "MongoDB",
      "date": "2025-02-06",
      "employment_period": "mongodb-2025",
      "title": "2025: I'm joining MongoDB",
      "url": "https://www.linkedin.com/pulse/2025-im-joining-mongodb-franck-pachot-e4shf",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "benefit",
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Not only am I eager to learn more about the MongoDB database engine, but my extensive background in relational databases and data modeling for various applications can benefit these users.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:e4shf",
      "database": "Oracle Database",
      "date": "2025-02-06",
      "employment_period": "mongodb-2025",
      "title": "2025: I'm joining MongoDB",
      "url": "https://www.linkedin.com/pulse/2025-im-joining-mongodb-franck-pachot-e4shf",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL didn't evolve for at least fifteen years before the database vendors offered new APIs like a REST endpoint (ORDS in Oracle Database) or more recent attempts (JSON-Relational Duality Views in Oracle Database).",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:e4shf",
      "database": "PostgreSQL",
      "date": "2025-02-06",
      "employment_period": "mongodb-2025",
      "title": "2025: I'm joining MongoDB",
      "url": "https://www.linkedin.com/pulse/2025-im-joining-mongodb-franck-pachot-e4shf",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I'll continue to look at some SQL databases such as Oracle, AWS RDS, PostgreSQL, and YugabyteDB—which has some impressive features in the 2025 roadmap, notably enhanced PostgreSQL compatibility .",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:e4shf",
      "database": "YugabyteDB",
      "date": "2025-02-06",
      "employment_period": "mongodb-2025",
      "title": "2025: I'm joining MongoDB",
      "url": "https://www.linkedin.com/pulse/2025-im-joining-mongodb-franck-pachot-e4shf",
      "source": "linkedin",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "impressive"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I'll continue to look at some SQL databases such as Oracle, AWS RDS, PostgreSQL, and YugabyteDB—which has some impressive features in the 2025 roadmap, notably enhanced PostgreSQL compatibility .",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2199299",
      "database": "MongoDB",
      "date": "2025-02-08",
      "employment_period": "mongodb-2025",
      "title": "Document Expiration with TTL Indexes in MongoDB",
      "url": "https://dev.to/franckpachot/document-expiration-with-ttl-indexes-in-mongodb-2007",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Document Expiration with TTL Indexes in MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2266720",
      "database": "Amazon Aurora",
      "date": "2025-02-09",
      "employment_period": "mongodb-2025",
      "title": "Aurora DSQL is different than Aurora, but Aurora DSQL belongs to Aurora (which belongs to RDS)",
      "url": "https://dev.to/aws-heroes/aurora-dsql-is-different-than-aurora-but-aurora-dsql-belongs-to-aurora-25e8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 16,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Still, from a user point of view, and with good marketing, it can be seen as a switch in the Aurora database service that reduces PostgreSQL compatibility to provide horizontal scalability, like the switch to serverless, when cost is more critical than performance predictability, to limitless, when a sharding key is possible for all use cases, or to compatibility extensions, like Babelfish.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2266720",
      "database": "Amazon DynamoDB",
      "date": "2025-02-09",
      "employment_period": "mongodb-2025",
      "title": "Aurora DSQL is different than Aurora, but Aurora DSQL belongs to Aurora (which belongs to RDS)",
      "url": "https://dev.to/aws-heroes/aurora-dsql-is-different-than-aurora-but-aurora-dsql-belongs-to-aurora-25e8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Still, they succeeded because they were used internally by the cloud provider: DynamoDB powers Amazon (it all started with the shopping cart), and Google critical applications rely on Spanner (AdWords, YouTube).",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2266720",
      "database": "MySQL",
      "date": "2025-02-09",
      "employment_period": "mongodb-2025",
      "title": "Aurora DSQL is different than Aurora, but Aurora DSQL belongs to Aurora (which belongs to RDS)",
      "url": "https://dev.to/aws-heroes/aurora-dsql-is-different-than-aurora-but-aurora-dsql-belongs-to-aurora-25e8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Aurora is compatible with MySQL or PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2266720",
      "database": "PostgreSQL",
      "date": "2025-02-09",
      "employment_period": "mongodb-2025",
      "title": "Aurora DSQL is different than Aurora, but Aurora DSQL belongs to Aurora (which belongs to RDS)",
      "url": "https://dev.to/aws-heroes/aurora-dsql-is-different-than-aurora-but-aurora-dsql-belongs-to-aurora-25e8",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "They could either accept the necessary workarounds in application code to continue using the distributed database or voice concerns about its lack of PostgreSQL compatibility.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2270247",
      "database": "MongoDB",
      "date": "2025-02-11",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Equality, Sort, Range (ESR) without Equality (SR): add an unbounded range predicate on the indexed sort field",
      "url": "https://dev.to/mongodb/mongodb-equality-sort-range-esr-without-equality-sr-add-an-unbounded-range-predicate-on-the-2j9n",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "excellent",
        "improvement"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In summary, the ESR (Equality, Sort, Range) Rule outlined by MongoDB is an excellent framework for designing your composite indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2301189",
      "database": "MongoDB",
      "date": "2025-02-27",
      "employment_period": "mongodb-2025",
      "title": "Skip Scan in MongoDB with Range, Equality (RE) index as an alternative to Equality, Sort, Range (ESR)",
      "url": "https://dev.to/mongodb/skip-scan-in-mongodb-with-range-equality-re-index-as-an-alternative-to-equality-sort-range-176p",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Skip Scan in MongoDB with Range, Equality (RE) index as an alternative to Equality, Sort, Range (ESR).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2301767",
      "database": "MongoDB",
      "date": "2025-02-27",
      "employment_period": "mongodb-2025",
      "title": "Order-preserving or-expansion in MongoDB and $in:[,,] treated as a range skip scan, or exploded to an equality for the ESR rule",
      "url": "https://dev.to/mongodb/or-expansion-in-mongodb-and-how-in-is-treated-as-a-range-with-skip-scan-or-an-equality-for-2b38",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Order-preserving or-expansion in MongoDB and $in:[,,] treated as a range skip scan, or exploded to an equality for the ESR rule.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2301767",
      "database": "Oracle Database",
      "date": "2025-02-27",
      "employment_period": "mongodb-2025",
      "title": "Order-preserving or-expansion in MongoDB and $in:[,,] treated as a range skip scan, or exploded to an equality for the ESR rule",
      "url": "https://dev.to/mongodb/or-expansion-in-mongodb-and-how-in-is-treated-as-a-range-with-skip-scan-or-an-equality-for-2b38",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle Database can convert a list into a concatenation (UNION ALL) using a technique known as OR Expansion, yet it lacks a merge sort feature on top of it.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2321065",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2025-03-09",
      "employment_period": "mongodb-2025",
      "title": "Comparing Execution Plans: MongoDB vs. Compatible APIs",
      "url": "https://dev.to/mongodb/comparing-execution-plans-mongodb-vs-compatible-apis-46p6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "AWS and Azure call theirs 'DocumentDB', and Oracle provides the MongoDB API as a proxy on top of its SQL database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2321065",
      "database": "MongoDB",
      "date": "2025-03-09",
      "employment_period": "mongodb-2025",
      "title": "Comparing Execution Plans: MongoDB vs. Compatible APIs",
      "url": "https://dev.to/mongodb/comparing-execution-plans-mongodb-vs-compatible-apis-46p6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 12,
      "positive_signals": [
        "better",
        "delivers stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "**TL;DR: MongoDB has better performance, and more indexing possibilities.** ## Document Model (_Order - Order Detail_) I used a simple schema of orders and order lines, ideal for a document model.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2321065",
      "database": "Oracle Database",
      "date": "2025-03-09",
      "employment_period": "mongodb-2025",
      "title": "Comparing Execution Plans: MongoDB vs. Compatible APIs",
      "url": "https://dev.to/mongodb/comparing-execution-plans-mongodb-vs-compatible-apis-46p6",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "reported claim is challenged"
      ],
      "evidence_excerpt": "Testing an order/order-detail pagination query against Oracle's MongoDB-API-compatible autonomous database and native MongoDB shows MongoDB reading fewer rows and offering more indexing options.",
      "relation_aware": true
    },
    {
      "publication_id": "linkedin:c3hne",
      "database": "MongoDB",
      "date": "2025-03-11",
      "employment_period": "mongodb-2025",
      "title": "Relational and Document Data Modeling (50 years ago, 25 years ago, and 2025)",
      "url": "https://www.linkedin.com/pulse/relational-document-data-modeling-50-years-ago-25-today-franck-pachot-c3hne",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "However, it is crucial that the database system is optimized for those access patterns and provides indexing on both document and sub-document attributes, like with MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2331326",
      "database": "MongoDB",
      "date": "2025-03-13",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Multi-Planner Optimizer and Plan Cache",
      "url": "https://dev.to/mongodb/mongodb-multi-planner-optimizer-and-plan-cache-3g27",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB Multi-Planner Optimizer and Plan Cache.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2306481",
      "database": "MongoDB",
      "date": "2025-03-17",
      "employment_period": "mongodb-2025",
      "title": "Normalization and Relational Division in SQL and MongoDB",
      "url": "https://dev.to/mongodb/normalization-and-relational-division-in-sql-and-mongodb-212l",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Notably, one operation, **relational division** — cited as essential for efficient data processing on normalized tables — can be quite complex to achieve in SQL databases but **is more straightforward in MongoDB**.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2337250",
      "database": "MongoDB",
      "date": "2025-03-19",
      "employment_period": "mongodb-2025",
      "title": "MongoDB equivalent for PostgreSQL JSONB operations",
      "url": "https://dev.to/mongodb/mongodb-equivalent-for-postgresql-jsonb-operations-hfo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB equivalent for PostgreSQL JSONB operations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2337250",
      "database": "PostgreSQL",
      "date": "2025-03-19",
      "employment_period": "mongodb-2025",
      "title": "MongoDB equivalent for PostgreSQL JSONB operations",
      "url": "https://dev.to/mongodb/mongodb-equivalent-for-postgresql-jsonb-operations-hfo",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "benefit",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This article examines PostgreSQL operations that benefit from GIN indexes, as listed in Built-in GIN Operator Classes.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2353684",
      "database": "MongoDB",
      "date": "2025-03-24",
      "employment_period": "mongodb-2025",
      "title": "MongoDB TTL and Disk Storage",
      "url": "https://dev.to/mongodb/mongodb-ttl-and-disk-storage-2d35",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB TTL and Disk Storage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2358692",
      "database": "MongoDB",
      "date": "2025-03-26",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Vector Search Index, With Local Atlas and Ollama",
      "url": "https://dev.to/mongodb/vector-search-index-in-mongodb-with-local-atlas-and-ollama-1p8j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB Vector Search Index, With Local Atlas and Ollama.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:jvq6e",
      "database": "MongoDB",
      "date": "2025-03-31",
      "employment_period": "mongodb-2025",
      "title": "❝ The World Is Too Messy for SQL to Work ❞",
      "url": "https://www.linkedin.com/pulse/world-too-messy-sql-work-franck-pachot-jvq6e",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "recommended"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It is recommended that schema validation be added so that the MongoDB database can guarantee that the documents have the fields expected by the application code.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2375803",
      "database": "MongoDB",
      "date": "2025-04-03",
      "employment_period": "mongodb-2025",
      "title": "Foreign Keys: A must in SQL, but not in a Document Database?",
      "url": "https://dev.to/mongodb/foreign-keys-a-must-in-sql-but-not-in-a-document-database-2alf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Comparison In conclusion, MongoDB does not lack foreign keys.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2375803",
      "database": "PostgreSQL",
      "date": "2025-04-03",
      "employment_period": "mongodb-2025",
      "title": "Foreign Keys: A must in SQL, but not in a Document Database?",
      "url": "https://dev.to/mongodb/foreign-keys-a-must-in-sql-but-not-in-a-document-database-2alf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Migration When migrating from PostgreSQL to MongoDB, provided that the relational data modeling was done correctly, consider the following: - ON DELETE CASCADE indicates a shared lifecycle and should be transformed into an embedded sub-document.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2384679",
      "database": "MongoDB",
      "date": "2025-04-06",
      "employment_period": "mongodb-2025",
      "title": "Where SQL joins struggle but MongoDB documents shine",
      "url": "https://dev.to/mongodb/a-case-where-sql-joins-struggle-but-mongodb-documents-shine-11kj",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In contrast, document databases like MongoDB utilize embedded documents to optimize complex queries with fewer joins, and multi-key composite indexes offer efficient access paths that cover all selective filters .",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2384679",
      "database": "Oracle Database",
      "date": "2025-04-06",
      "employment_period": "mongodb-2025",
      "title": "Where SQL joins struggle but MongoDB documents shine",
      "url": "https://dev.to/mongodb/a-case-where-sql-joins-struggle-but-mongodb-documents-shine-11kj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Data warehouses in Oracle Databases can use bitmap join indexes, star transformation, and materialized views to overcome this, but they are not suited to OLTP workloads.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2397997",
      "database": "MongoDB",
      "date": "2025-04-11",
      "employment_period": "mongodb-2025",
      "title": "Oracle Multi-Value Index and ORDER BY Pagination queries",
      "url": "https://dev.to/franckpachot/oracle-multi-value-index-and-order-by-pagination-queries-529e",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Using Oracle 23c's MongoDB-compatible API for the same nested order-details example, Oracle's multi-value JSON index still can't retrieve only the necessary entries the way MongoDB's index does.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2397997",
      "database": "Oracle Database",
      "date": "2025-04-11",
      "employment_period": "mongodb-2025",
      "title": "Oracle Multi-Value Index and ORDER BY Pagination queries",
      "url": "https://dev.to/franckpachot/oracle-multi-value-index-and-order-by-pagination-queries-529e",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "limitation",
        "named source of disadvantages"
      ],
      "evidence_excerpt": "## Possible explanation I tried to understand if it is a limitation of Oracle multi-value indexes, or the query planner.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2404029",
      "database": "MongoDB",
      "date": "2025-04-13",
      "employment_period": "mongodb-2025",
      "title": "MongoDB With Search Indexes Queried as Kimball's Star Schema With Facts and Dimensions",
      "url": "https://dev.to/mongodb/mongodb-with-search-indexes-queried-as-kimballs-star-schema-with-facts-and-dimensions-k1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB With Search Indexes Queried as Kimball's Star Schema With Facts and Dimensions.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2404029",
      "database": "Oracle Database",
      "date": "2025-04-13",
      "employment_period": "mongodb-2025",
      "title": "MongoDB With Search Indexes Queried as Kimball's Star Schema With Facts and Dimensions",
      "url": "https://dev.to/mongodb/mongodb-with-search-indexes-queried-as-kimballs-star-schema-with-facts-and-dimensions-k1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For real-time analytics, Oracle offers an In-Memory Column Store, which serves as an analytic-optimized cache for transactional databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2409682",
      "database": "MongoDB",
      "date": "2025-04-15",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL JSONB Indexing Limitations with B-Tree and GIN",
      "url": "https://dev.to/mongodb/postgresql-jsonb-indexing-limitations-with-b-tree-and-gin-3851",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "However, they face challenges with indexing compared to document databases like MongoDB, which offer multi-key indexes for optimizing equality, sort, and range filtering.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2409682",
      "database": "PostgreSQL",
      "date": "2025-04-15",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL JSONB Indexing Limitations with B-Tree and GIN",
      "url": "https://dev.to/mongodb/postgresql-jsonb-indexing-limitations-with-b-tree-and-gin-3851",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "PostgreSQL JSONB Indexing Limitations with B-Tree and GIN.",
      "relation_aware": true
    },
    {
      "publication_id": "linkedin:gt4le",
      "database": "MongoDB",
      "date": "2025-04-21",
      "employment_period": "mongodb-2025",
      "title": "A benchmark is published by a database vendor and guess what? 🥁 their database is faster 👏🏼",
      "url": "https://www.linkedin.com/pulse/benchmark-published-database-vendor-guess-what-faster-franck-pachot-gt4le",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast",
        "faster side of comparison"
      ],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "I'm a MongoDB developer advocate and know that such query can be fast with the right index for a Sort, Range query.",
      "relation_aware": true
    },
    {
      "publication_id": "linkedin:gt4le",
      "database": "MySQL",
      "date": "2025-04-21",
      "employment_period": "mongodb-2025",
      "title": "A benchmark is published by a database vendor and guess what? 🥁 their database is faster 👏🏼",
      "url": "https://www.linkedin.com/pulse/benchmark-published-database-vendor-guess-what-faster-franck-pachot-gt4le",
      "source": "linkedin",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "For example, for query Q6, PostgreSQL is shown as 40 times slower than MongoDB, and MySQL is 1000 times slower.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:gt4le",
      "database": "PostgreSQL",
      "date": "2025-04-21",
      "employment_period": "mongodb-2025",
      "title": "A benchmark is published by a database vendor and guess what? 🥁 their database is faster 👏🏼",
      "url": "https://www.linkedin.com/pulse/benchmark-published-database-vendor-guess-what-faster-franck-pachot-gt4le",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient",
        "possesses stated advantages"
      ],
      "critical_signals": [
        "slower side of comparison"
      ],
      "evidence_excerpt": "For example, DISTINCT ON is optimized in TimescaleDB with index skip scan but can be rewritten differently for PostgreSQL: only some databases provide efficient execution plan for DISTINCT ON I've saved the most frustrating point for last.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2436911",
      "database": "MongoDB",
      "date": "2025-04-27",
      "employment_period": "mongodb-2025",
      "title": "Index Only Scan on JSON Documents in MongoDB, with covering and multi-key indexes",
      "url": "https://dev.to/mongodb/index-only-scan-on-json-documents-with-covering-and-multi-key-indexes-in-mongodb-53h4",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "benefit",
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I add the names to the key in order to allow for index-only scans to benefit from the O(log n) scalability of B-Tree indexes: ```js db.friends.createIndex( { phoneNumber:1, firstName:1, lastName:1 } ) ``` To confirm that an index-only scan is occurring, I examine the execution plan specifically for PROJECTION_COVERED rather than FETCH ### With default projection: IXSCAN ➤ FETCH Due to its flexible schema, MongoDB can",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2436911",
      "database": "PostgreSQL",
      "date": "2025-04-27",
      "employment_period": "mongodb-2025",
      "title": "Index Only Scan on JSON Documents in MongoDB, with covering and multi-key indexes",
      "url": "https://dev.to/mongodb/index-only-scan-on-json-documents-with-covering-and-multi-key-indexes-in-mongodb-53h4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike PostgreSQL's GIN indexes on JSONB arrays, which can't support range filters, sorting, or projection coverage, MongoDB's multi-key indexes natively enable a covering Index Only Scan.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2440910",
      "database": "PostgreSQL",
      "date": "2025-04-28",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL aborts the transactions on error",
      "url": "https://dev.to/aws-heroes/postgresql-rollback-on-error-515a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL aborts the transactions on error.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wgyie",
      "database": "Amazon Aurora",
      "date": "2025-04-29",
      "employment_period": "mongodb-2025",
      "title": "DB-Engines Ranking Method Reviewed",
      "url": "https://www.linkedin.com/pulse/db-engines-ranking-method-reviewed-franck-pachot-wgyie",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For instance, \"Amazon Aurora\" includes several MySQL or PostgreSQL-compatible services.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wgyie",
      "database": "MySQL",
      "date": "2025-04-29",
      "employment_period": "mongodb-2025",
      "title": "DB-Engines Ranking Method Reviewed",
      "url": "https://www.linkedin.com/pulse/db-engines-ranking-method-reviewed-franck-pachot-wgyie",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For instance, \"Amazon Aurora\" includes several MySQL or PostgreSQL-compatible services.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wgyie",
      "database": "Oracle Database",
      "date": "2025-04-29",
      "employment_period": "mongodb-2025",
      "title": "DB-Engines Ranking Method Reviewed",
      "url": "https://www.linkedin.com/pulse/db-engines-ranking-method-reviewed-franck-pachot-wgyie",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Marketing content avoids using db-engine scores directly, which ranks Oracle Corporation databases (Oracle Database and MySQL) on top.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wgyie",
      "database": "PostgreSQL",
      "date": "2025-04-29",
      "employment_period": "mongodb-2025",
      "title": "DB-Engines Ranking Method Reviewed",
      "url": "https://www.linkedin.com/pulse/db-engines-ranking-method-reviewed-franck-pachot-wgyie",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Yes, PostgreSQL is a good database, like others that rank highly in this database ranking engine, but it is essential to consider additional criteria beyond just their relative rankings and trends.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2449915",
      "database": "MongoDB",
      "date": "2025-04-30",
      "employment_period": "mongodb-2025",
      "title": "Querying embedded arrays in JSON (PostgreSQL JSONB and MongoDB documents)",
      "url": "https://dev.to/franckpachot/query-and-index-json-array-fields-in-postgresql-and-mongodb-3md",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Querying embedded arrays in JSON (PostgreSQL JSONB and MongoDB documents).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2449915",
      "database": "PostgreSQL",
      "date": "2025-04-30",
      "employment_period": "mongodb-2025",
      "title": "Querying embedded arrays in JSON (PostgreSQL JSONB and MongoDB documents)",
      "url": "https://dev.to/franckpachot/query-and-index-json-array-fields-in-postgresql-and-mongodb-3md",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "However, when an array is present in the path, representing a One-to-Many relationship, PostgreSQL requires a GIN index and the use of JSON path operators for indexing, more efficient than SQL/JSON queries.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2451522",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2025-05-01",
      "employment_period": "mongodb-2025",
      "title": "RUM instead of GIN but same limitations on JSON paths (tested on FerretDB 17-0.107.0)",
      "url": "https://dev.to/franckpachot/microsoft-documentdb-rum-instead-of-gin-but-same-limitations-on-json-paths-48kn",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "In DocumentDB, GIN indexes are replaced by RUM indexes, but show the same limitation (in March 2025 - later versions extended RUM).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2451522",
      "database": "MongoDB",
      "date": "2025-05-01",
      "employment_period": "mongodb-2025",
      "title": "RUM instead of GIN but same limitations on JSON paths (tested on FerretDB 17-0.107.0)",
      "url": "https://dev.to/franckpachot/microsoft-documentdb-rum-instead-of-gin-but-same-limitations-on-json-paths-48kn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "flexible",
        "improved"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Additionally, such an index would not address the issue, as document databases like MongoDB allow fields to be either scalar or flexible types such as objects or arrays.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2451522",
      "database": "PostgreSQL",
      "date": "2025-05-01",
      "employment_period": "mongodb-2025",
      "title": "RUM instead of GIN but same limitations on JSON paths (tested on FerretDB 17-0.107.0)",
      "url": "https://dev.to/franckpachot/microsoft-documentdb-rum-instead-of-gin-but-same-limitations-on-json-paths-48kn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I've seen this recently on Reddit where many contributors overlooked that document databases must also index the documents for efficient queries: > _you can just create a table in postgres that is a key and a JSON field and boom, you have a document store_ This is wrong except if \"_document store_\" stands for full document access by primary key, like an object store.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2458709",
      "database": "Amazon Aurora",
      "date": "2025-05-04",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-microsoft-documentdb-extension-for-postgresql-210f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Clarifies that Amazon DocumentDB, a MongoDB-compatible service resembling Aurora internally, is unrelated to Microsoft's separately named open-source DocumentDB extension used in vCore Cosmos DB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2458709",
      "database": "Amazon DocumentDB",
      "date": "2025-05-04",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-microsoft-documentdb-extension-for-postgresql-210f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2458709",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2025-05-04",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-microsoft-documentdb-extension-for-postgresql-210f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2458709",
      "database": "MongoDB",
      "date": "2025-05-04",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-microsoft-documentdb-extension-for-postgresql-210f",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "My next post will be about Amazon DocumentDB and how it compares to MongoDB in terms of indexing a flexible schema with multiple keys.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2458709",
      "database": "PostgreSQL",
      "date": "2025-05-04",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-microsoft-documentdb-extension-for-postgresql-210f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon DocumentDB != Microsoft DocumentDB extension for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2453549",
      "database": "Amazon Aurora",
      "date": "2025-05-05",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB and multi-key indexing",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-and-multi-key-indexing-147d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "AWS offers Amazon DocumentDB, which provides compatibility with MongoDB 5.0 and may run on top of Aurora PostgreSQL, a guess due to some similarities, never confirmed officially, but the storage capabilities are those of Aurora.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2453549",
      "database": "Amazon DocumentDB",
      "date": "2025-05-05",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB and multi-key indexing",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-and-multi-key-indexing-147d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Is Amazon DocumentDB better?",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2453549",
      "database": "MongoDB",
      "date": "2025-05-05",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB and multi-key indexing",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-and-multi-key-indexing-147d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical exploration",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "efficient",
        "flexible",
        "possesses stated advantages"
      ],
      "critical_signals": [
        "named source of disadvantages"
      ],
      "evidence_excerpt": "**MongoDB's strength** is not just in document storage like a key-value store, but also in its **efficient indexing for queries with equality, sorting, and range filtering on flexible schemas** with embedded arrays and sub-documents.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2453549",
      "database": "Oracle Database",
      "date": "2025-05-05",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB and multi-key indexing",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-and-multi-key-indexing-147d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In previous posts, I discussed the limitations of MongoDB emulations on databases like Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2453549",
      "database": "PostgreSQL",
      "date": "2025-05-05",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB and multi-key indexing",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-and-multi-key-indexing-147d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In previous posts, I discussed the limitations of MongoDB emulations on databases like Oracle and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2461605",
      "database": "MongoDB",
      "date": "2025-05-06",
      "employment_period": "mongodb-2025",
      "title": "Using a Star Query on MongoDB Atlas Search Index",
      "url": "https://dev.to/mongodb/htap-using-a-star-query-on-mongodb-atlas-search-index-17p5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "flexible",
        "possesses stated advantages",
        "powerful",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The search index serves as the analytical engine for the operational database, leveraging the powerful capabilities of the MongoDB aggregation pipeline.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2510263",
      "database": "MongoDB",
      "date": "2025-05-22",
      "employment_period": "mongodb-2025",
      "title": "Indexing for New Use Cases Within the MongoDB Document Model (tutorial)",
      "url": "https://dev.to/franckpachot/indexing-for-new-use-cases-within-the-mongodb-document-model-tutorial-2hdm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Indexing for New Use Cases Within the MongoDB Document Model (tutorial).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2515069",
      "database": "MongoDB",
      "date": "2025-05-22",
      "employment_period": "mongodb-2025",
      "title": "Search Index for Reporting",
      "url": "https://dev.to/franckpachot/search-index-for-reporting-1d7n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A MongoDB Atlas Search index over the YouTube statistics dataset, with dynamic:false and typed fields like token and number, serves near-real-time OLAP reporting isolated from the OLTP workload.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2515074",
      "database": "MongoDB",
      "date": "2025-05-23",
      "employment_period": "mongodb-2025",
      "title": "B-Tree for Equality, Sort, Range (indexing strategies in MongoDB)",
      "url": "https://dev.to/franckpachot/b-tree-for-equality-sort-range-2ego",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "B-Tree for Equality, Sort, Range (indexing strategies in MongoDB).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2517414",
      "database": "MongoDB",
      "date": "2025-05-23",
      "employment_period": "mongodb-2025",
      "title": "Intro to PostgreSQL with JSONB compared to MongoDB, a general purpose document database",
      "url": "https://dev.to/mongodb/postgresql-with-jsonb-and-mongodb-with-schema-2nh0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "advantage",
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL offers flexibility over relational with its JSONB datatype, and MongoDB's flexible schema allows for some normalization through references and schema validation.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2517414",
      "database": "PostgreSQL",
      "date": "2025-05-23",
      "employment_period": "mongodb-2025",
      "title": "Intro to PostgreSQL with JSONB compared to MongoDB, a general purpose document database",
      "url": "https://dev.to/mongodb/postgresql-with-jsonb-and-mongodb-with-schema-2nh0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It's really hard to find an advantage that mongo brings at that point, postgres is better in almost every way even at being a document store The provocateur tweets that Postgres has lots of types, but you really only need 2: SERIAL and JSONB, and followers believe it without realizing it is one of the worst suggestions.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2517428",
      "database": "MongoDB",
      "date": "2025-05-23",
      "employment_period": "mongodb-2025",
      "title": "No Index Only Scan on JSONB Fields (even on scalar)",
      "url": "https://dev.to/mongodb/no-index-only-scan-on-jsonb-fields-and-with-even-scalar-6n6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "If you want to use a document database, then MongoDB has no problem on indexing fields in JSON: ```js db.items.createIndex( { referenceId: 1 } ) db.items.aggregate([ { $match: { referenceId: { $gt: MinKey } } }, // to skip inexisting field { $group: { _id: \"$referenceId\", count: { $sum: 1 } } }, { $match: { count: { $gt: 1 } } }, { $project: { referenceId: \"$_id\", count: 1 } } ]).explain(); ...",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2517428",
      "database": "PostgreSQL",
      "date": "2025-05-23",
      "employment_period": "mongodb-2025",
      "title": "No Index Only Scan on JSONB Fields (even on scalar)",
      "url": "https://dev.to/mongodb/no-index-only-scan-on-jsonb-fields-and-with-even-scalar-6n6",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "--- You can create GIN indexes on JSON fields in PostgreSQL, but those will not help with ORDER BY or GROUP BY because they use Bitmap Scan which doesn't provide range or sort like regular B-Tree indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2522167",
      "database": "MongoDB",
      "date": "2025-05-24",
      "employment_period": "mongodb-2025",
      "title": "No Index for LIKE on JSONB with Array in the Path (GIN limitation)",
      "url": "https://dev.to/mongodb/no-index-for-like-on-jsonb-with-array-in-the-path-hbe",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "overcomes stated disadvantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "``` With MongoDB, you don't have to choose between regular and inverted indexes or deal with their limitations.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2522167",
      "database": "PostgreSQL",
      "date": "2025-05-24",
      "employment_period": "mongodb-2025",
      "title": "No Index for LIKE on JSONB with Array in the Path (GIN limitation)",
      "url": "https://dev.to/mongodb/no-index-for-like-on-jsonb-with-array-in-the-path-hbe",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Storing multiple email addresses as a JSONB array shows PostgreSQL's GIN index, already needed once an array enters the path, still cannot accelerate a LIKE pattern search on those array elements.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2516063",
      "database": "MongoDB",
      "date": "2025-05-26",
      "employment_period": "mongodb-2025",
      "title": "Equality with Multiple Values, Preserving Sort for Pagination",
      "url": "https://dev.to/franckpachot/equality-with-multiple-values-preserving-sort-for-pagination-ddh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A category/publishedDate/duration compound index still serves a query listing videos across several categories, since MongoDB merges up to 200 per-value index scans while keeping sort order.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2516063",
      "database": "PostgreSQL",
      "date": "2025-05-26",
      "employment_period": "mongodb-2025",
      "title": "Equality with Multiple Values, Preserving Sort for Pagination",
      "url": "https://dev.to/franckpachot/equality-with-multiple-values-preserving-sort-for-pagination-ddh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Not many databases can do that (as exposed in the PostgreSQL Wiki), and it can be combined with the loose index scan we have seen above.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2522746",
      "database": "Amazon DocumentDB",
      "date": "2025-05-27",
      "employment_period": "mongodb-2025",
      "title": "Sort on Array with Multi-Key Index",
      "url": "https://dev.to/franckpachot/sort-on-array-with-multi-key-index-2nhn",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I tested Amazon DocumentDB, Azure CosmosDB, Oracle Database, and FerretDB, but none could effectively cover the sort operation with an index, and they all ended up scanning the entire collection for the queries presented, which is slower and cannot scale.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2522746",
      "database": "MongoDB",
      "date": "2025-05-27",
      "employment_period": "mongodb-2025",
      "title": "Sort on Array with Multi-Key Index",
      "url": "https://dev.to/franckpachot/sort-on-array-with-multi-key-index-2nhn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Unlike many databases that allow only a single value per document, MongoDB's flexible schema also supports indexing within nested arrays.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2522746",
      "database": "Oracle Database",
      "date": "2025-05-27",
      "employment_period": "mongodb-2025",
      "title": "Sort on Array with Multi-Key Index",
      "url": "https://dev.to/franckpachot/sort-on-array-with-multi-key-index-2nhn",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "I tested Amazon DocumentDB, Azure CosmosDB, Oracle Database, and FerretDB, but none could effectively cover the sort operation with an index, and they all ended up scanning the entire collection for the queries presented, which is slower and cannot scale.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2532950",
      "database": "MongoDB",
      "date": "2025-05-27",
      "employment_period": "mongodb-2025",
      "title": "Google Firestore with MongoDB compatibility - index limitations",
      "url": "https://dev.to/franckpachot/firestore-with-mongodb-compatibility-testing-pagination-queries-jmf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "flexible",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The issue lies not in quantity but in quality of the compatibility, limited to very simple key-value queries, lacking the advantages of MongoDB’s flexible schema document model and multi-key index performance.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2549165",
      "database": "PostgreSQL",
      "date": "2025-05-31",
      "employment_period": "mongodb-2025",
      "title": "No HOT updates on JSONB (write amplification) performance impact",
      "url": "https://dev.to/mongodb/no-hot-updates-on-jsonb-13k7",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "workaround",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "We have seen one limitation of expression indexes in a previous post (No Index Only Scan on JSONB Fields) and here is another one: PostgreSQL doesn't detect when the indexed value has not changed.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2550082",
      "database": "PostgreSQL",
      "date": "2025-06-04",
      "employment_period": "mongodb-2025",
      "title": "JSONB DeTOASTing (read amplification) when using PostgreSQL as a Document Database",
      "url": "https://dev.to/mongodb/jsonb-detoasting-read-amplification-4ikj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "JSONB DeTOASTing (read amplification) when using PostgreSQL as a Document Database.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2569051",
      "database": "MongoDB",
      "date": "2025-06-06",
      "employment_period": "mongodb-2025",
      "title": "Isolation Level for MongoDB Multi-Document Transactions (Strong Consistency)",
      "url": "https://dev.to/mongodb/isolation-level-for-mongodb-multi-document-transactions-3lfi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Isolation Level for MongoDB Multi-Document Transactions (Strong Consistency).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2569051",
      "database": "PostgreSQL",
      "date": "2025-06-06",
      "employment_period": "mongodb-2025",
      "title": "Isolation Level for MongoDB Multi-Document Transactions (Strong Consistency)",
      "url": "https://dev.to/mongodb/isolation-level-for-mongodb-multi-document-transactions-3lfi",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Porting Martin Kleppmann's Hermitage isolation tests from PostgreSQL to MongoDB shows its snapshot read concern matches the multi-document transaction isolation of other MVCC SQL databases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2576242",
      "database": "MongoDB",
      "date": "2025-06-09",
      "employment_period": "mongodb-2025",
      "title": "\"Schema Later\" considered harmful 👉🏻 schema validation (enforced data consistency)",
      "url": "https://dev.to/mongodb/schema-later-considered-harmful-use-schema-validation-in-mongodb-364o",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In MongoDB, you can begin with a flexible schema defined by your application.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2576478",
      "database": "MongoDB",
      "date": "2025-06-09",
      "employment_period": "mongodb-2025",
      "title": "Comparison of JOINS 👉🏻 aggregation pipeline and CTEs",
      "url": "https://dev.to/mongodb/comparison-of-joins-mongodb-vs-postgresql-aggregation-pipeline-4h12",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 2,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "fast",
        "flexible",
        "recommended"
      ],
      "critical_signals": [
        "slow",
        "slower side of comparison"
      ],
      "evidence_excerpt": "Critiques an EDB blog's employee-department $lookup-then-$group pipeline claiming 'joins are brittle in MongoDB,' showing the example itself violates recommended aggregation design practice.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2576478",
      "database": "PostgreSQL",
      "date": "2025-06-09",
      "employment_period": "mongodb-2025",
      "title": "Comparison of JOINS 👉🏻 aggregation pipeline and CTEs",
      "url": "https://dev.to/mongodb/comparison-of-joins-mongodb-vs-postgresql-aggregation-pipeline-4h12",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "faster side of comparison"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It is also easier to debug, running the intermediate steps To conclude, it is true that joins in PostgreSQL are generally faster than lookups in MongoDB.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2588181",
      "database": "MongoDB",
      "date": "2025-06-13",
      "employment_period": "mongodb-2025",
      "title": "DuckDB to query MongoDB",
      "url": "https://dev.to/mongodb/duckdb-to-query-mongodb-3lnk",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 2,
      "critical_weight": 2,
      "mixed": true,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [
        "limitation",
        "slower side of comparison"
      ],
      "evidence_excerpt": "MongoDB is a general-purpose database for operational data in a flexible format.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2588181",
      "database": "PostgreSQL",
      "date": "2025-06-13",
      "employment_period": "mongodb-2025",
      "title": "DuckDB to query MongoDB",
      "url": "https://dev.to/mongodb/duckdb-to-query-mongodb-3lnk",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "faster",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It's important to understand that the faster join performance in PostgreSQL compared to MongoDB is not due to the database engine itself, but reading a flexible document model through the limitation of a relational view.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2594489",
      "database": "MongoDB",
      "date": "2025-06-15",
      "employment_period": "mongodb-2025",
      "title": "Queries on JSON 👉🏻 compound indexes (Equality, Sort, Range) in MongoDB",
      "url": "https://dev.to/mongodb/queries-on-json-compound-indexes-equality-sort-range-2lce",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "advantage",
        "delivers stated advantages",
        "faster side of comparison",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The document model in MongoDB offers the advantage of having all important fields consolidated within a single document.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2594489",
      "database": "PostgreSQL",
      "date": "2025-06-15",
      "employment_period": "mongodb-2025",
      "title": "Queries on JSON 👉🏻 compound indexes (Equality, Sort, Range) in MongoDB",
      "url": "https://dev.to/mongodb/queries-on-json-compound-indexes-equality-sort-range-2lce",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [
        "slower side of comparison"
      ],
      "evidence_excerpt": "## Single-field indexes Here are the indexes that were created for the vendor benchmark: ```js db.github2015.createIndex( {\"type\":1} ) db.github2015.createIndex( {\"repo.name\":1} ) db.github2015.createIndex( {\"payload.action\":1} ) db.github2015.createIndex( {\"actor.login\":1} ) db.github2015.createIndex( {\"payload.issue.comments\":1} ) ``` Seeing the index definitions, I already know why they got better results on Postg",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2598230",
      "database": "PostgreSQL",
      "date": "2025-06-17",
      "employment_period": "mongodb-2025",
      "title": "$lookup: more than just a SQL join (understand performance)",
      "url": "https://dev.to/mongodb/lookup-is-more-than-just-a-sql-join-3b90",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Although $lookup resembles a SQL LEFT JOIN, it intersects two sets like PostgreSQL's array && operator and returns matches nested as an array instead of duplicating outer rows per match.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2603901",
      "database": "MongoDB",
      "date": "2025-06-19",
      "employment_period": "mongodb-2025",
      "title": "One million $lookup challenge (performance comparison)",
      "url": "https://dev.to/mongodb/one-million-lookup-challenge-mongodb-slow-join-1kao",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "efficient",
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In contrast, MongoDB provides flexible schemas for application objects and supports a joins where the join key can be an array ($lookup: more than just a SQL join) as part of an aggregation pipeline.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2610586",
      "database": "MongoDB",
      "date": "2025-06-22",
      "employment_period": "mongodb-2025",
      "title": "faster $lookup after $group in MongoDB aggregation pipeline (Performance Optimization Tips)",
      "url": "https://dev.to/mongodb/faster-lookup-after-group-in-mongodb-aggregation-pipeline-5fbp",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "faster $lookup after $group in MongoDB aggregation pipeline (Performance Optimization Tips).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2615691",
      "database": "MongoDB",
      "date": "2025-06-24",
      "employment_period": "mongodb-2025",
      "title": "No pre-filtering in pgvector means reduced ANN recall (impact on Vector Search accuracy)",
      "url": "https://dev.to/mongodb/no-pre-filtering-in-pgvector-means-reduced-ann-recall-1aa1",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Some users have moved to MongoDB Atlas Vector Search because it offers pre-filtering capabilities.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2615691",
      "database": "PostgreSQL",
      "date": "2025-06-24",
      "employment_period": "mongodb-2025",
      "title": "No pre-filtering in pgvector means reduced ANN recall (impact on Vector Search accuracy)",
      "url": "https://dev.to/mongodb/no-pre-filtering-in-pgvector-means-reduced-ann-recall-1aa1",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "A demo filtering vector similarity search by tenant_id shows PostgreSQL's pgvector applies the WHERE predicate after the nearest-neighbor search, reducing recall versus genuine pre-filtering.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2632801",
      "database": "MongoDB",
      "date": "2025-06-28",
      "employment_period": "mongodb-2025",
      "title": "Flush to disk on commit 👉🏻 MongoDB durable writes (ACID)",
      "url": "https://dev.to/mongodb/committed-writes-are-flushed-to-disk-mongodb-durability-12o9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Flush to disk on commit 👉🏻 MongoDB durable writes (ACID).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2632801",
      "database": "PostgreSQL",
      "date": "2025-06-28",
      "employment_period": "mongodb-2025",
      "title": "Flush to disk on commit 👉🏻 MongoDB durable writes (ACID)",
      "url": "https://dev.to/mongodb/committed-writes-are-flushed-to-disk-mongodb-durability-12o9",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB uses the open-source WiredTiger storage engine, which implemented the same solution as PostgreSQL to avoid that: panic instead of retry.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2638775",
      "database": "MongoDB",
      "date": "2025-06-30",
      "employment_period": "mongodb-2025",
      "title": "Strong consistency 👉🏻 MongoDB highly available durable writes (Replication)",
      "url": "https://dev.to/mongodb/strong-consistency-mongodb-highly-available-durable-writes-2j2k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Strong consistency 👉🏻 MongoDB highly available durable writes (Replication).",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:mjo4e",
      "database": "PostgreSQL",
      "date": "2025-07-01",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL Extensions and the \"Anarchy in the Database\" VLDB paper",
      "url": "https://www.linkedin.com/pulse/postgresql-extensions-anarchy-database-vldb-paper-franck-pachot-mjo4e",
      "source": "linkedin",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "Lack of Isolation and Safety Mechanisms No enforced isolation: PostgreSQL provides extensions with a highly permissive, low-level API through the database's C code, granting them extensive access to the database's internals.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2651464",
      "database": "MongoDB",
      "date": "2025-07-03",
      "employment_period": "mongodb-2025",
      "title": "Erik (author of Lucene in Action) is starting a series on search indexes",
      "url": "https://dev.to/franckpachot/erik-is-starting-a-series-on-search-indexes-5ba8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Points to Erik Hatcher, author of Lucene in Action, launching his own dev.to series exploring search indexes, cross-linked for readers following MongoDB's Lucene-based Atlas Search coverage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2665934",
      "database": "MongoDB",
      "date": "2025-07-08",
      "employment_period": "mongodb-2025",
      "title": "ALTER TABLE ... ADD COLUMN",
      "url": "https://dev.to/mongodb/alter-table-add-column-2nlp",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "While MongoDB's flexible per-document schema needs no DDL for new fields, modern PostgreSQL's ALTER TABLE ADD COLUMN with a constant default no longer rewrites the whole table or holds a long lock.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2665934",
      "database": "PostgreSQL",
      "date": "2025-07-08",
      "employment_period": "mongodb-2025",
      "title": "ALTER TABLE ... ADD COLUMN",
      "url": "https://dev.to/mongodb/alter-table-add-column-2nlp",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "Before PostgreSQL 11, the ALTER TABLE command had to write this default value into every row, which could be slow.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2672857",
      "database": "Amazon DocumentDB",
      "date": "2025-07-10",
      "employment_period": "mongodb-2025",
      "title": "Wildcard Indexes: MongoDB flexibility joins query performance",
      "url": "https://dev.to/franckpachot/wildcard-indexes--19la",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": ") MongoServerError[CannotCreateIndex]: Error in specification { \"name\" : \"author_1_accessControl.$**_1_category_1\", \"key\" : { \"author\" : 1, \"accessControl.$**\" : 1, \"category\" : 1 } } :: caused by :: wildcard indexes do not allow compounding ``` AWS has a service compatible with old versions of MongoDB, Amazon DocumentDB, and this fails: ``` docdb> db.youstats.createIndex( ...",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2672857",
      "database": "MongoDB",
      "date": "2025-07-10",
      "employment_period": "mongodb-2025",
      "title": "Wildcard Indexes: MongoDB flexibility joins query performance",
      "url": "https://dev.to/franckpachot/wildcard-indexes--19la",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Wildcard Indexes: MongoDB flexibility joins query performance.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2672857",
      "database": "Oracle Database",
      "date": "2025-07-10",
      "employment_period": "mongodb-2025",
      "title": "Wildcard Indexes: MongoDB flexibility joins query performance",
      "url": "https://dev.to/franckpachot/wildcard-indexes--19la",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "I tested on Oracle with the MongoDB compatible API: ``` oracle> db.youstats.createIndex( ...",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2703992",
      "database": "MongoDB",
      "date": "2025-07-18",
      "employment_period": "mongodb-2025",
      "title": "Sequences in MongoDB",
      "url": "https://dev.to/mongodb/sequences-in-mongodb-with-gap-and-no-gap-transactional-57e4",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Sequences in MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:rp1pe",
      "database": "MongoDB",
      "date": "2025-07-18",
      "employment_period": "mongodb-2025",
      "title": "Data Modeling: Is Normalization Still Relevant?",
      "url": "https://www.linkedin.com/pulse/data-modeling-normalization-still-relevant-franck-pachot-rp1pe",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast",
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Fast-forward to today: as I work with MongoDB , a NoSQL database, I’m hearing about third normal form (3NF) all over again.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2707842",
      "database": "MongoDB",
      "date": "2025-07-20",
      "employment_period": "mongodb-2025",
      "title": "$isArray: [💬,💬,💬] ❌ - Arrays are Argument Lists in MongoDB Aggregation Pipeline",
      "url": "https://dev.to/mongodb/isarray-arrays-are-argument-lists-in-mongodb-aggregation-pipeline-1cch",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Text-based languages would use `isNumber(42)` but MongoDB query language is structured into BSON to better integrate with application languages and be easily parsed by the drivers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2707842",
      "database": "PostgreSQL",
      "date": "2025-07-20",
      "employment_period": "mongodb-2025",
      "title": "$isArray: [💬,💬,💬] ❌ - Arrays are Argument Lists in MongoDB Aggregation Pipeline",
      "url": "https://dev.to/mongodb/isarray-arrays-are-argument-lists-in-mongodb-aggregation-pipeline-1cch",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "----------------- integer postgres=> SELECT pg_typeof(42, 42); ERROR: function pg_typeof(integer, integer) does not exist LINE 1: SELECT pg_typeof(42, 42); ^ HINT: No function matches the given name and argument types.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2706969",
      "database": "MongoDB",
      "date": "2025-07-21",
      "employment_period": "mongodb-2025",
      "title": "Database latency with PostgreSQL and MongoDB: it's the data model that makes it fast",
      "url": "https://dev.to/mongodb/client-server-latency-in-postgresql-and-mongodb-81h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Database latency with PostgreSQL and MongoDB: it's the data model that makes it fast.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2706969",
      "database": "PostgreSQL",
      "date": "2025-07-21",
      "employment_period": "mongodb-2025",
      "title": "Database latency with PostgreSQL and MongoDB: it's the data model that makes it fast",
      "url": "https://dev.to/mongodb/client-server-latency-in-postgresql-and-mongodb-81h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Database latency with PostgreSQL and MongoDB: it's the data model that makes it fast.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2714273",
      "database": "MongoDB",
      "date": "2025-07-22",
      "employment_period": "mongodb-2025",
      "title": ".hint() in MongoDB is different that SQL optimizer hints: they force indexes",
      "url": "https://dev.to/mongodb/hint-in-mongodb-is-different-that-sql-optimizer-hints-they-force-indexes-4c33",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": ".hint() in MongoDB is different that SQL optimizer hints: they force indexes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2716028",
      "database": "MongoDB",
      "date": "2025-07-23",
      "employment_period": "mongodb-2025",
      "title": "Lock-Free Wait-on-Conflict and Fail-on-Conflict in MongoDB",
      "url": "https://dev.to/mongodb/lock-free-wait-on-conflict-and-fail-on-conflict-in-mongodb-372h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Lock-Free Wait-on-Conflict and Fail-on-Conflict in MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2669399",
      "database": "MongoDB",
      "date": "2025-08-02",
      "employment_period": "mongodb-2025",
      "title": "MongoDB High Availability: Replica Set in a Docker Lab",
      "url": "https://dev.to/mongodb/mongodb-high-availability-replicaset-in-a-docker-lab-4jlc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB High Availability: Replica Set in a Docker Lab.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2750693",
      "database": "MongoDB",
      "date": "2025-08-04",
      "employment_period": "mongodb-2025",
      "title": "Why MongoDB skips indexes when flattening or renaming sub-document fields in $project before $match aggregation pipeline",
      "url": "https://dev.to/mongodb/why-mongodb-skips-indexes-when-flattening-or-renaming-sub-document-fields-in-project-before-match-1o6d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "With MongoDB flexible schema, I can insert sub-documents with different shape, like an array of multiple contacts, or even array of arrays: ```js db.customers.insertMany([ { customer_id: \"C002\", contact: [ { email: \"robert.paulson@fightclub.com\" }, { phone: \"555-2020\" } ] }, { customer_id: \"C003\", contact: [ { email: [\"narrator@fightclub.com\", \"tyler.durden@fightclub.com\"] }, { email: \"jack@fightclub.com\" }, ] } ]); ",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2752959",
      "database": "MongoDB",
      "date": "2025-08-05",
      "employment_period": "mongodb-2025",
      "title": "Transaction performance 👉🏻 retry with backoff",
      "url": "https://dev.to/franckpachot/transaction-performance-retry-with-backoff-12lm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Re-analyzing a 2019 EDB benchmark that fueled the 'MongoDB transactions are slow' myth shows its code never implemented retry-with-backoff for fail-on-conflict concurrency.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2752959",
      "database": "PostgreSQL",
      "date": "2025-08-05",
      "employment_period": "mongodb-2025",
      "title": "Transaction performance 👉🏻 retry with backoff",
      "url": "https://dev.to/franckpachot/transaction-performance-retry-with-backoff-12lm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A benchmark sponsored by EDB, a PostgreSQL company, in 2019 contributed to the myth that MongoDB transactions are slow.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2748599",
      "database": "MongoDB",
      "date": "2025-08-07",
      "employment_period": "mongodb-2025",
      "title": "MongoDB indexing internals: .showRecordId() and .hint({$natural:1})",
      "url": "https://dev.to/mongodb/mongodb-indexing-internals-showrecordid-and-hintnatural1-4cpl",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "efficient",
        "fast",
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB’s approach improves on traditional heap tables, especially for storing **variable-size document**s, because WiredTiger uses B+Tree nodes for efficient space management, reusing space and splitting pages as needed, rather than relying on settings like PCTFREE or FILLFACTOR to reserve space for updates, or SHRINK/VACUUM operations to defragment after deletes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2748599",
      "database": "Oracle Database",
      "date": "2025-08-07",
      "employment_period": "mongodb-2025",
      "title": "MongoDB indexing internals: .showRecordId() and .hint({$natural:1})",
      "url": "https://dev.to/mongodb/mongodb-indexing-internals-showrecordid-and-hintnatural1-4cpl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle's ROWID or PostgreSQL's CTID heap pointers, MongoDB's WiredTiger clusters documents in a B+Tree keyed by an internal RecordId, visible via .showRecordId() and $natural hints.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2748599",
      "database": "PostgreSQL",
      "date": "2025-08-07",
      "employment_period": "mongodb-2025",
      "title": "MongoDB indexing internals: .showRecordId() and .hint({$natural:1})",
      "url": "https://dev.to/mongodb/mongodb-indexing-internals-showrecordid-and-hintnatural1-4cpl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle's ROWID or PostgreSQL's CTID heap pointers, MongoDB's WiredTiger clusters documents in a B+Tree keyed by an internal RecordId, visible via .showRecordId() and $natural hints.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2728789",
      "database": "MongoDB",
      "date": "2025-08-08",
      "employment_period": "mongodb-2025",
      "title": "Joining and grouping on array fields in MongoDB may require using $unwind before applying $group or $lookup",
      "url": "https://dev.to/mongodb/joining-and-grouping-on-array-fields-in-mongodb-may-require-using-unwind-before-applying-group-or-41nj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Joining and grouping on array fields in MongoDB may require using $unwind before applying $group or $lookup.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2768109",
      "database": "PostgreSQL",
      "date": "2025-08-11",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL UUID: Bulk insert with UUIDv7 vs UUIDv4",
      "url": "https://dev.to/aws-heroes/postgresql-uuid-bulk-insert-with-uuidv7-vs-uuidv4-4oca",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL UUID: Bulk insert with UUIDv7 vs UUIDv4.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2770491",
      "database": "MongoDB",
      "date": "2025-08-12",
      "employment_period": "mongodb-2025",
      "title": "Does PostgreSQL support as much \"schema flexibility\" as MongoDB? Not for indexing!",
      "url": "https://dev.to/mongodb/does-postgresql-support-as-much-schema-flexibility-as-mongodb-not-for-indexing-412g",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It is different from the field in the array, which is, when there are two items in the array: - `\"order.0.createdAt\"` or `jsonb_col #>> '{order,0,createdAt}'` - `\"order.1.createdAt\"` or `jsonb_col #>> '{order,1,createdAt}'` In MongoDB, if you create an index on \"order.createdAt\" it will transparently index all those possible paths, because MongoDB is a document database that supports flexible schema.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2770491",
      "database": "PostgreSQL",
      "date": "2025-08-12",
      "employment_period": "mongodb-2025",
      "title": "Does PostgreSQL support as much \"schema flexibility\" as MongoDB? Not for indexing!",
      "url": "https://dev.to/mongodb/does-postgresql-support-as-much-schema-flexibility-as-mongodb-not-for-indexing-412g",
      "source": "dev.to",
      "evaluation": -2,
      "positive_weight": 0,
      "critical_weight": 6,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [
        "wrong result"
      ],
      "evidence_excerpt": "'$.order.createdAt >= \"2025-08-12\"'; I copy/paste the example and it provides a wrong result as it includes a user with all orders created before \"2025-08-12\": ```sql postgres=# CREATE INDEX my_index ON my_table USING GIN (jsonb_col); CREATE INDEX postgres=# SELECT * FROM my_table WHERE jsonb_col @?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2775490",
      "database": "MongoDB",
      "date": "2025-08-15",
      "employment_period": "mongodb-2025",
      "title": "Why Doesn't Oracle Multi-Value Index Optimize .sort() Like MongoDB Does With its Multi-Key Index?",
      "url": "https://dev.to/mongodb/why-doesnt-oracle-multi-value-index-optimize-sort-like-mongodb-does-with-its-multi-key-index-2b5c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "flexible",
        "improvement"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This improvement facilitates partial emulation of the MongoDB API and its semantic with flexible schemas.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2775490",
      "database": "Oracle Database",
      "date": "2025-08-15",
      "employment_period": "mongodb-2025",
      "title": "Why Doesn't Oracle Multi-Value Index Optimize .sort() Like MongoDB Does With its Multi-Key Index?",
      "url": "https://dev.to/mongodb/why-doesnt-oracle-multi-value-index-optimize-sort-like-mongodb-does-with-its-multi-key-index-2b5c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Why Doesn't Oracle Multi-Value Index Optimize .sort() Like MongoDB Does With its Multi-Key Index?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2775490",
      "database": "PostgreSQL",
      "date": "2025-08-15",
      "employment_period": "mongodb-2025",
      "title": "Why Doesn't Oracle Multi-Value Index Optimize .sort() Like MongoDB Does With its Multi-Key Index?",
      "url": "https://dev.to/mongodb/why-doesnt-oracle-multi-value-index-optimize-sort-like-mongodb-does-with-its-multi-key-index-2b5c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "Finally, Oracle multi-value indexes have the same limitation as PostgreSQL GIN indexes, which builds deduplication with bitmaps: They cannot be used to avoid a sort for efficient pagination queries.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2777174",
      "database": "MongoDB",
      "date": "2025-08-18",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Arrays: Sort Order and Comparison",
      "url": "https://dev.to/mongodb/mongodb-arrays-sort-order-and-comparison-d9d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB Arrays: Sort Order and Comparison.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2777174",
      "database": "Oracle Database",
      "date": "2025-08-18",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Arrays: Sort Order and Comparison",
      "url": "https://dev.to/mongodb/mongodb-arrays-sort-order-and-comparison-d9d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In Oracle Database, this difference happens with text, as it depends on the language, and can be configured (the default is there for historical reason and better performance).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2787817",
      "database": "MongoDB",
      "date": "2025-08-24",
      "employment_period": "mongodb-2025",
      "title": "Embedding Into JSONB Still Feels Like a JOIN for Large Documents",
      "url": "https://dev.to/mongodb/embedding-into-jsonb-still-feels-like-a-join-for-large-documents-3nd0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "It’s a tempting idea: Embed your related data directly inside a single JSONB column, and you should be able to avoid additional table lookups for data that is always queried together, just like in MongoDB, right?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2787817",
      "database": "PostgreSQL",
      "date": "2025-08-24",
      "employment_period": "mongodb-2025",
      "title": "Embedding Into JSONB Still Feels Like a JOIN for Large Documents",
      "url": "https://dev.to/mongodb/embedding-into-jsonb-still-feels-like-a-join-for-large-documents-3nd0",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 2,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "possesses stated advantages"
      ],
      "critical_signals": [
        "worse"
      ],
      "evidence_excerpt": "You can verify the index height with the pageinspect extension: ```sql postgres=# create extension if not exists pageinspect; CREATE EXTENSION postgres=# select btpo_level from bt_page_stats('order_items_pkey', ( select root from bt_metap('order_items_pkey')) ); btpo_level ------------ 2 ``` I've read only one document in this example, but it can be worse with more documents.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2803581",
      "database": "PostgreSQL",
      "date": "2025-08-27",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL JSONB Size Limits to Prevent TOAST Slicing",
      "url": "https://dev.to/franckpachot/postgresql-jsonb-size-limits-to-prevent-toast-slicing-9e8",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL JSONB Size Limits to Prevent TOAST Slicing.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2804512",
      "database": "MongoDB",
      "date": "2025-08-28",
      "employment_period": "mongodb-2025",
      "title": "Updates to the Same Value: MongoDB Optimization",
      "url": "https://dev.to/mongodb/mongodb-optimizes-updates-to-the-same-value-1f2k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Updates to the Same Value: MongoDB Optimization.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2804512",
      "database": "PostgreSQL",
      "date": "2025-08-28",
      "employment_period": "mongodb-2025",
      "title": "Updates to the Same Value: MongoDB Optimization",
      "url": "https://dev.to/mongodb/mongodb-optimizes-updates-to-the-same-value-1f2k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB skips rewriting a document and its index entries when an update sets a field to the value it already holds, unlike a PostgreSQL SET val=val update, which still generates WAL records.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2809970",
      "database": "Amazon DocumentDB",
      "date": "2025-09-01",
      "employment_period": "mongodb-2025",
      "title": "DocumentDB: Comparing Emulation Internals with MongoDB",
      "url": "https://dev.to/aws-heroes/documentdb-comparing-emulations-with-mongodb-4cec",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Its popularity has led to the development of compatible APIs by other vendors, like Amazon DocumentDB (with MongoDB compatibility), highlighting MongoDB's importance in modern applications.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2809970",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2025-09-01",
      "employment_period": "mongodb-2025",
      "title": "DocumentDB: Comparing Emulation Internals with MongoDB",
      "url": "https://dev.to/aws-heroes/documentdb-comparing-emulations-with-mongodb-4cec",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "better side of comparison"
      ],
      "critical_signals": [],
      "evidence_excerpt": "DocumentDB: Comparing Emulation Internals with MongoDB.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2809970",
      "database": "MongoDB",
      "date": "2025-09-01",
      "employment_period": "mongodb-2025",
      "title": "DocumentDB: Comparing Emulation Internals with MongoDB",
      "url": "https://dev.to/aws-heroes/documentdb-comparing-emulations-with-mongodb-4cec",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "An emulation cannot truly replace MongoDB, which was designed to store, index, and process documents with flexible schema natively instead of using fixed-size blocks and relational tables, but may help in their transition.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2809970",
      "database": "Oracle Database",
      "date": "2025-09-01",
      "employment_period": "mongodb-2025",
      "title": "DocumentDB: Comparing Emulation Internals with MongoDB",
      "url": "https://dev.to/aws-heroes/documentdb-comparing-emulations-with-mongodb-4cec",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [
        "worse side of comparison"
      ],
      "evidence_excerpt": "On this example, DocumentDB on PostgreSQL performs better than Oracle since it applies the full filter on the index.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2809970",
      "database": "PostgreSQL",
      "date": "2025-09-01",
      "employment_period": "mongodb-2025",
      "title": "DocumentDB: Comparing Emulation Internals with MongoDB",
      "url": "https://dev.to/aws-heroes/documentdb-comparing-emulations-with-mongodb-4cec",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better side of comparison",
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Emulations introduce new indexes like Oracle’s multi‑value index or PostgreSQL’s extended RUM index to bridge that gap, but optimizations such as pushing down ORDER BY for efficient pagination are not yet implemented.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2829275",
      "database": "MongoDB",
      "date": "2025-09-08",
      "employment_period": "mongodb-2025",
      "title": "Resilience of MongoDB's WiredTiger Storage Engine to Disk Failure Compared to PostgreSQL and Oracle",
      "url": "https://dev.to/mongodb/resilience-of-mongodbs-wiredtiger-storage-engine-to-disk-failure-compared-to-postgresql-and-oracle-h9f",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 12,
      "positive_signals": [
        "advantage",
        "flexible",
        "named source of advantages",
        "robust"
      ],
      "critical_signals": [],
      "evidence_excerpt": "One advantage of WiredTiger is that B-tree leaf blocks can have flexible sizes, which MongoDB uses to keep documents as one chunk on disk and improve data locality.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:2829275",
      "database": "Oracle Database",
      "date": "2025-09-08",
      "employment_period": "mongodb-2025",
      "title": "Resilience of MongoDB's WiredTiger Storage Engine to Disk Failure Compared to PostgreSQL and Oracle",
      "url": "https://dev.to/mongodb/resilience-of-mongodbs-wiredtiger-storage-engine-to-disk-failure-compared-to-postgresql-and-oracle-h9f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Resilience of MongoDB's WiredTiger Storage Engine to Disk Failure Compared to PostgreSQL and Oracle.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2829275",
      "database": "PostgreSQL",
      "date": "2025-09-08",
      "employment_period": "mongodb-2025",
      "title": "Resilience of MongoDB's WiredTiger Storage Engine to Disk Failure Compared to PostgreSQL and Oracle",
      "url": "https://dev.to/mongodb/resilience-of-mongodbs-wiredtiger-storage-engine-to-disk-failure-compared-to-postgresql-and-oracle-h9f",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "bug"
      ],
      "evidence_excerpt": "PostgreSQL checksums can detect some block corruption, but it is still possible that a bug or a malicious user that has access to the filesystem can change the data without being detected.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2841989",
      "database": "MongoDB",
      "date": "2025-09-14",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Internals: How Collections and Indexes Are Stored in WiredTiger",
      "url": "https://dev.to/mongodb/mongodb-internals-how-collections-and-indexes-are-stored-in-wiredtiger-2ed",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB Internals: How Collections and Indexes Are Stored in WiredTiger.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2845065",
      "database": "MongoDB",
      "date": "2025-09-16",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Multikey Indexes and Index Bound Optimization",
      "url": "https://dev.to/franckpachot/mongodb-multikey-indexes-and-index-bound-optimization-ol9",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB allows flexible schema where a field can be an array, but keeps track of it to optimize the index range scan when it is known that there are only scalars in a field.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2847233",
      "database": "MongoDB",
      "date": "2025-09-18",
      "employment_period": "mongodb-2025",
      "title": "Combine Two JSON Collections with Nested Arrays: MongoDB and PostgreSQL Aggregations",
      "url": "https://dev.to/franckpachot/combine-two-json-collections-with-nested-arrays-mongodb-and-postgresql-aggregations-30k2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Combine Two JSON Collections with Nested Arrays: MongoDB and PostgreSQL Aggregations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2847233",
      "database": "PostgreSQL",
      "date": "2025-09-18",
      "employment_period": "mongodb-2025",
      "title": "Combine Two JSON Collections with Nested Arrays: MongoDB and PostgreSQL Aggregations",
      "url": "https://dev.to/franckpachot/combine-two-json-collections-with-nested-arrays-mongodb-and-postgresql-aggregations-30k2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Combine Two JSON Collections with Nested Arrays: MongoDB and PostgreSQL Aggregations.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2854549",
      "database": "MongoDB",
      "date": "2025-09-19",
      "employment_period": "mongodb-2025",
      "title": "Text Search With MongoDB (BM25 TF-IDF) and PostgreSQL",
      "url": "https://dev.to/mongodb/text-search-with-mongodb-and-postgresql-full-text-search-1blg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Text Search With MongoDB (BM25 TF-IDF) and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2854549",
      "database": "PostgreSQL",
      "date": "2025-09-19",
      "employment_period": "mongodb-2025",
      "title": "Text Search With MongoDB (BM25 TF-IDF) and PostgreSQL",
      "url": "https://dev.to/mongodb/text-search-with-mongodb-and-postgresql-full-text-search-1blg",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Text Search With MongoDB (BM25 TF-IDF) and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2859516",
      "database": "MongoDB",
      "date": "2025-09-21",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Search Index Internals With Luke (Lucene Toolbox GUI Tool)",
      "url": "https://dev.to/mongodb/mongodb-search-index-internals-with-luke-lucene-toolbox-gui-tool-2842",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB Search Index Internals With Luke (Lucene Toolbox GUI Tool).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2850562",
      "database": "MongoDB",
      "date": "2025-09-28",
      "employment_period": "mongodb-2025",
      "title": "WiredTigerHS.wt: MongoDB MVCC Durable History Store",
      "url": "https://dev.to/mongodb/mongodb-mvcc-durable-history-store-wiredtigerhswt-mn2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "WiredTigerHS.wt: MongoDB MVCC Durable History Store.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2850562",
      "database": "PostgreSQL",
      "date": "2025-09-28",
      "employment_period": "mongodb-2025",
      "title": "WiredTigerHS.wt: MongoDB MVCC Durable History Store",
      "url": "https://dev.to/mongodb/mongodb-mvcc-durable-history-store-wiredtigerhswt-mn2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The difference is that WiredTiger uses 64‑bit logical timestamps, which removes the wraparound risk that PostgreSQL must address by periodically freezing transaction IDs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2889160",
      "database": "MongoDB",
      "date": "2025-10-03",
      "employment_period": "mongodb-2025",
      "title": "First/Last per Group: PostgreSQL DISTINCT ON and MongoDB DISTINCT_SCAN Performance",
      "url": "https://dev.to/mongodb/firstlast-per-group-postgresql-distinct-on-and-mongodb-distinctscan-performance-1e9d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Answering Stack Overflow's most-frequent PostgreSQL question, first-per-group rows, DISTINCT ON is compared against MongoDB's $sort plus $first/$last, triggering an efficient DISTINCT_SCAN plan.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2889160",
      "database": "PostgreSQL",
      "date": "2025-10-03",
      "employment_period": "mongodb-2025",
      "title": "First/Last per Group: PostgreSQL DISTINCT ON and MongoDB DISTINCT_SCAN Performance",
      "url": "https://dev.to/mongodb/firstlast-per-group-postgresql-distinct-on-and-mongodb-distinctscan-performance-1e9d",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "First/Last per Group: PostgreSQL DISTINCT ON and MongoDB DISTINCT_SCAN Performance.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2907359",
      "database": "MongoDB",
      "date": "2025-10-22",
      "employment_period": "mongodb-2025",
      "title": "Advanced Query Capabilities 👉🏻 aggregation pipelines",
      "url": "https://dev.to/franckpachot/advanced-query-capabilities-aggregation-pipelines-137m",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "efficient",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Although MongoDB has supported ACID transactions and sophisticated aggregation features for years, certain publications still promote outdated misconceptions, claiming that only SQL databases provide robust data consistency and powerful querying capabilities.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2907359",
      "database": "PostgreSQL",
      "date": "2025-10-22",
      "employment_period": "mongodb-2025",
      "title": "Advanced Query Capabilities 👉🏻 aggregation pipelines",
      "url": "https://dev.to/franckpachot/advanced-query-capabilities-aggregation-pipelines-137m",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This is particularly important for applications that require strong consistency, such as financial systems or inventory management.* Yes, PostgreSQL does provide ACID transactions and strong consistency, but this is mainly true for single-node deployments.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:2982347",
      "database": "MongoDB",
      "date": "2025-11-01",
      "employment_period": "mongodb-2025",
      "title": "Covering Index for $group/$sum in MongoDB Aggregation (With Hint)",
      "url": "https://dev.to/mongodb/covering-index-for-group-in-mongodb-aggregation-with-hint-4e6m",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "advantage",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For `$first` or `$last` accumulators, MongoDB takes advantage of the index automatically, without needing a hint, since it is like a filter, retrieving the first or last entry from the index for each group.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3012967",
      "database": "MongoDB",
      "date": "2025-11-11",
      "employment_period": "mongodb-2025",
      "title": "How does it scale? A basic OLTP benchmark on MongoDB",
      "url": "https://dev.to/mongodb/how-does-it-scale-the-most-basic-benchmark-on-mongodb-p9b",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A basic OLTP benchmark on MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3016195",
      "database": "Amazon DocumentDB",
      "date": "2025-11-14",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB New Query Planner (version 2)",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-new-query-planner-2dh0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon DocumentDB New Query Planner (version 2).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3016195",
      "database": "MongoDB",
      "date": "2025-11-14",
      "employment_period": "mongodb-2025",
      "title": "Amazon DocumentDB New Query Planner (version 2)",
      "url": "https://dev.to/aws-heroes/amazon-documentdb-new-query-planner-2dh0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "efficient",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is less efficient than MongoDB multi-key indexes where deduplication happens during the scan and preserve the ordering.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3032189",
      "database": "MongoDB",
      "date": "2025-11-17",
      "employment_period": "mongodb-2025",
      "title": "Nested Loop and Hash Join for MongoDB $lookup",
      "url": "https://dev.to/mongodb/nested-loop-and-hash-join-for-mongodb-lookup-259d",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "While MongoDB provides similar algorithms, adapted to flexible documents, being a NoSQL database means it shifts more responsibility to the developer.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3041533",
      "database": "MongoDB",
      "date": "2025-11-21",
      "employment_period": "mongodb-2025",
      "title": "INNER JOIN and LEFT OUTER JOIN in MongoDB (with $lookup and $unwind)",
      "url": "https://dev.to/mongodb/inner-join-and-left-outer-join-in-mongodb-with-lookup-and-unwind-2ge4",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "delivers stated advantages",
        "flexible",
        "possesses stated advantages",
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Rather than trying to replicate SQL patterns in MongoDB, it’s important to think from the application’s perspective—how the data will be consumed—and use MongoDB’s document model, flexible schema, and aggregation features like $lookup, $unwind, and array matching to shape the results in the most useful form for your code.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3051440",
      "database": "MongoDB",
      "date": "2025-11-23",
      "employment_period": "mongodb-2025",
      "title": "Data Locality vs. Independence (NoSQL vs. SQL)",
      "url": "https://thenewstack.io/why-store-together-access-together-matters-for-your-database",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## MongoDB’s Middle Road for Flexible Schemas MongoDB evolved by adding essential relational database capabilities — indexes, query planning, multidocument ACID transactions — while keeping the application-first document model.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3051440",
      "database": "Oracle Database",
      "date": "2025-11-23",
      "employment_period": "mongodb-2025",
      "title": "Data Locality vs. Independence (NoSQL vs. SQL)",
      "url": "https://thenewstack.io/why-store-together-access-together-matters-for-your-database",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "For example, Oracle has long supported “clustered tables” for co-locating related rows from multiple columns, and more recently offers a choice for JSON storage as either binary JSON (OSON, Oracle’s native binary JSON) or decomposed relational rows (JSON-relational duality views).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3035325",
      "database": "MongoDB",
      "date": "2025-11-24",
      "employment_period": "mongodb-2025",
      "title": "What writeConcern: {w: 1} Really Means: Isolation and Durability",
      "url": "https://dev.to/mongodb/what-writeconcern-w-1-really-means-isolation-and-durability-3glk",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB's `w:1` is similar, and calling it a \"dirty read\" is useful to highlight the implications for developers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3065018",
      "database": "MongoDB",
      "date": "2025-11-27",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Index Intersection (and PostgreSQL Bitmap-and)",
      "url": "https://dev.to/franckpachot/mongodb-index-intersection-and-postgresql-bitmap-scan-40a6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "## Conclusion Although MongoDB's index intersection is powerful in theory, you will not see it in practice for the following reasons: 1.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3065018",
      "database": "PostgreSQL",
      "date": "2025-11-27",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Index Intersection (and PostgreSQL Bitmap-and)",
      "url": "https://dev.to/franckpachot/mongodb-index-intersection-and-postgresql-bitmap-scan-40a6",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Given two single-field indexes on 100,000 documents, MongoDB rarely picks index intersection the way PostgreSQL uses Bitmap Scan, suggesting a compound index is usually the better fix.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3069329",
      "database": "MongoDB",
      "date": "2025-11-29",
      "employment_period": "mongodb-2025",
      "title": "Script to list MongoDB collection URI (to map to WiredTiger files)",
      "url": "https://dev.to/franckpachot/script-to-list-mongodb-collection-uri-to-map-to-wiredtiger-files-4k2n",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Script to list MongoDB collection URI (to map to WiredTiger files).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3102686",
      "database": "MongoDB",
      "date": "2025-12-12",
      "employment_period": "mongodb-2025",
      "title": "No, MongoDB Does Not Mean Skipping Design",
      "url": "https://thenewstack.io/rethinking-data-integrity-why-domain-driven-design-is-crucial/",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "better",
        "flexible",
        "robust"
      ],
      "critical_signals": [],
      "evidence_excerpt": "_With MongoDB, domain-driven design empowers developers to build robust systems by aligning the data model with business logic and access patterns._ --- Too often, developers are unfairly accused of being careless about data integrity.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3104255",
      "database": "MongoDB",
      "date": "2025-12-15",
      "employment_period": "mongodb-2025",
      "title": "Many-to-One: Stronger Relationship Design with MongoDB",
      "url": "https://dev.to/franckpachot/many-to-one-in-mongodb-embed-or-reference-lookup-or-find-i58",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Many-to-One: Stronger Relationship Design with MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3110780",
      "database": "MongoDB",
      "date": "2025-12-17",
      "employment_period": "mongodb-2025",
      "title": "Using $sql in Oracle Database instead of explain(\"executionStats\")",
      "url": "https://dev.to/franckpachot/the-sql-aggregation-stage-in-oracle-database-to-replace-explainexecutionstats-3clj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "On a one-million-document MongoDB-emulation collection indexed for Equality-Sort-Range, Oracle Database's $sql aggregation stage exposes the relational execution plan behind a millisecond query.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3110780",
      "database": "Oracle Database",
      "date": "2025-12-17",
      "employment_period": "mongodb-2025",
      "title": "Using $sql in Oracle Database instead of explain(\"executionStats\")",
      "url": "https://dev.to/franckpachot/the-sql-aggregation-stage-in-oracle-database-to-replace-explainexecutionstats-3clj",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Oracle has powerful hints, and you can use them with the `hint({\"$native\": })` (not to be confused with `hint({\"$natural\":1})`) of MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3116342",
      "database": "MongoDB",
      "date": "2025-12-19",
      "employment_period": "mongodb-2025",
      "title": "Atlas Search scoring calculation and why Lucene scores differ from Elasticsearch and pg_(text)search",
      "url": "https://dev.to/franckpachot/atlas-search-score-details-the-bm25-calculation-2g55",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Comparing emoji-based test documents shows MongoDB Atlas Search's BM25 score is a constant factor of 2.2 lower than Elasticsearch's, though score details reveal the same ranking order.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wka4e",
      "database": "Amazon DocumentDB",
      "date": "2025-12-20",
      "employment_period": "mongodb-2025",
      "title": "End-of-Year Thoughts on PostgreSQL (2025)",
      "url": "https://www.linkedin.com/pulse/end-of-year-thoughts-postgresql-2026-franck-pachot-wka4e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Will AWS migrate its existing DocumentDB offering to this new, PostgreSQL-based DocumentDB, even though they’re different products and AWS DocumentDB still has new features on its roadmap?",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wka4e",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2025-12-20",
      "employment_period": "mongodb-2025",
      "title": "End-of-Year Thoughts on PostgreSQL (2025)",
      "url": "https://www.linkedin.com/pulse/end-of-year-thoughts-postgresql-2026-franck-pachot-wka4e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Will AWS migrate its existing DocumentDB offering to this new, PostgreSQL-based DocumentDB, even though they’re different products and AWS DocumentDB still has new features on its roadmap?",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wka4e",
      "database": "MySQL",
      "date": "2025-12-20",
      "employment_period": "mongodb-2025",
      "title": "End-of-Year Thoughts on PostgreSQL (2025)",
      "url": "https://www.linkedin.com/pulse/end-of-year-thoughts-postgresql-2026-franck-pachot-wka4e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "After MySQL success, PlanetScale offers PostgreSQL with local NVMe disks for predictable performance.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wka4e",
      "database": "PostgreSQL",
      "date": "2025-12-20",
      "employment_period": "mongodb-2025",
      "title": "End-of-Year Thoughts on PostgreSQL (2025)",
      "url": "https://www.linkedin.com/pulse/end-of-year-thoughts-postgresql-2026-franck-pachot-wka4e",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 19,
      "positive_signals": [
        "better",
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "For a long time, PostgreSQL’s position was that if you could rewrite your SQL to obtain a better execution plan, you should, rather than expect more transformations in the query planner.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:wka4e",
      "database": "YugabyteDB",
      "date": "2025-12-20",
      "employment_period": "mongodb-2025",
      "title": "End-of-Year Thoughts on PostgreSQL (2025)",
      "url": "https://www.linkedin.com/pulse/end-of-year-thoughts-postgresql-2026-franck-pachot-wka4e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB significantly enhanced PostgreSQL compatibility in 2025, rebasing on PostgreSQL 15 and adding features such as generated columns, foreign keys on partitioned tables, and improved query optimization.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3118738",
      "database": "MongoDB",
      "date": "2025-12-21",
      "employment_period": "mongodb-2025",
      "title": "JSONB vs. BSON: Tracing PostgreSQL and MongoDB Wire Protocols",
      "url": "https://dev.to/franckpachot/jsonb-vs-bson-tracing-postgresql-and-mongodb-wire-protocols-1m51",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "BSON: Tracing PostgreSQL and MongoDB Wire Protocols.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3118738",
      "database": "PostgreSQL",
      "date": "2025-12-21",
      "employment_period": "mongodb-2025",
      "title": "JSONB vs. BSON: Tracing PostgreSQL and MongoDB Wire Protocols",
      "url": "https://dev.to/franckpachot/jsonb-vs-bson-tracing-postgresql-and-mongodb-wire-protocols-1m51",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "BSON: Tracing PostgreSQL and MongoDB Wire Protocols.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:vbtee",
      "database": "MongoDB",
      "date": "2025-12-22",
      "employment_period": "mongodb-2025",
      "title": "Financial Databases: SQL Is Not the Only Option – From ACID Theory to Banking Reality",
      "url": "https://www.linkedin.com/pulse/financial-databases-sql-only-option-from-acid-theory-banking-pachot-vbtee",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB delivers ACID transactions — single‑document and multi‑document — across a globally distributed architecture.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3122674",
      "database": "Amazon Aurora",
      "date": "2025-12-23",
      "employment_period": "mongodb-2025",
      "title": "Unnesting Scalar Subqueries into Left Outer Joins in SQL in Aurora and PostgreSQL",
      "url": "https://dev.to/aws-heroes/unnesting-scalar-subqueries-into-left-outer-joins-in-sql-556k",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Unnesting Scalar Subqueries into Left Outer Joins in SQL in Aurora and PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3122674",
      "database": "PostgreSQL",
      "date": "2025-12-23",
      "employment_period": "mongodb-2025",
      "title": "Unnesting Scalar Subqueries into Left Outer Joins in SQL in Aurora and PostgreSQL",
      "url": "https://dev.to/aws-heroes/unnesting-scalar-subqueries-into-left-outer-joins-in-sql-556k",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora PostgreSQL adds a planner transformation, absent in open-source PostgreSQL, that rewrites a correlated scalar subquery in the SELECT list into a LEFT OUTER JOIN for a better plan.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3123378",
      "database": "Amazon Aurora",
      "date": "2025-12-24",
      "employment_period": "mongodb-2025",
      "title": "Adaptive Join in Amazon Aurora PostgreSQL",
      "url": "https://dev.to/aws-heroes/adaptive-join-in-amazon-aurora-5ha0",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This feature in Aurora helps prevent some runaway queries, so I think it is a good idea to enable it by default, especially given that you can set a crossover multiplier to have it kick in only to avoid the worst cases.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3123378",
      "database": "MongoDB",
      "date": "2025-12-24",
      "employment_period": "mongodb-2025",
      "title": "Adaptive Join in Amazon Aurora PostgreSQL",
      "url": "https://dev.to/aws-heroes/adaptive-join-in-amazon-aurora-5ha0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora PostgreSQL's adaptive join defers the nested-loop-versus-hash-join decision until execution, similar to MongoDB's multi-planner and Oracle's buffered-row deferred plan selection.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3123378",
      "database": "Oracle Database",
      "date": "2025-12-24",
      "employment_period": "mongodb-2025",
      "title": "Adaptive Join in Amazon Aurora PostgreSQL",
      "url": "https://dev.to/aws-heroes/adaptive-join-in-amazon-aurora-5ha0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Amazon Aurora PostgreSQL's adaptive join defers the nested-loop-versus-hash-join decision until execution, similar to MongoDB's multi-planner and Oracle's buffered-row deferred plan selection.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3123378",
      "database": "PostgreSQL",
      "date": "2025-12-24",
      "employment_period": "mongodb-2025",
      "title": "Adaptive Join in Amazon Aurora PostgreSQL",
      "url": "https://dev.to/aws-heroes/adaptive-join-in-amazon-aurora-5ha0",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "Slow joins in PostgreSQL often result from a nested loop join chosen by the query planner, which estimates a few rows but processes hundreds of thousands.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3125389",
      "database": "MongoDB",
      "date": "2025-12-25",
      "employment_period": "mongodb-2025",
      "title": "No Foreign Keys in MongoDB: Rethinking Referential Integrity",
      "url": "https://dev.to/franckpachot/no-foreign-keys-in-mongodb-rethinking-referential-integrity-1b9b",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB’s flexible schema supports these cases, and you define referential integrity rules accordingly.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3130213",
      "database": "MongoDB",
      "date": "2025-12-28",
      "employment_period": "mongodb-2025",
      "title": "MongoDB read and write concerns compared to PostgreSQL synchronous commit",
      "url": "https://dev.to/franckpachot/mongodb-readwrite-vs-postgresql-synchronous-replication-2ni8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "delivers stated advantages",
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB instead includes replication into its read and write commands, and extend ACID guarantees across a horizontally scalable cluster.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3130213",
      "database": "PostgreSQL",
      "date": "2025-12-28",
      "employment_period": "mongodb-2025",
      "title": "MongoDB read and write concerns compared to PostgreSQL synchronous commit",
      "url": "https://dev.to/franckpachot/mongodb-readwrite-vs-postgresql-synchronous-replication-2ni8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "overcomes stated disadvantages",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "### Myth №4 – “We just need to promote PostgreSQL synchronous replica to avoid data loss” 🐘 In PostgreSQL, setting a node to synchronous doesn’t synchronise it instantly.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3135668",
      "database": "MongoDB",
      "date": "2025-12-31",
      "employment_period": "mongodb-2025",
      "title": "Why isn't \"majority\" the default read concern in MongoDB?",
      "url": "https://dev.to/franckpachot/why-isnt-majority-the-default-read-concern-in-mongodb-2782",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 17,
      "positive_signals": [
        "fast",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This configuration lets MongoDB adapt to different consistency and performance expectations, with explicit settings: ```sh // best consistency: mongodb+srv://mongo.net/test?w=majority&readConcernLevel=majority&readPreference=primary // fast visibility: mongodb+srv://mongo.net/test?w=majority&readConcernLevel=local&readPreference=primary // fast write: mongodb+srv://mongo.net/test?w=1&readConcernLevel=local&readPrefer",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3135668",
      "database": "PostgreSQL",
      "date": "2025-12-31",
      "employment_period": "mongodb-2025",
      "title": "Why isn't \"majority\" the default read concern in MongoDB?",
      "url": "https://dev.to/franckpachot/why-isnt-majority-the-default-read-concern-in-mongodb-2782",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "In reality, many databases chose different designs for scalability: - Non-blocking reads with MVCC (e.g., PostgreSQL or MongoDB) show anomalies not covered by the standard—\"write skew,\" for instance—and support isolation levels like Snapshot Isolation (SI), which differs from the SQL definitions, even though PostgreSQL uses the name Repeatable Read to match the SQL standard.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3141770",
      "database": "MongoDB",
      "date": "2026-01-01",
      "employment_period": "mongodb-2025",
      "title": "FOR UPDATE SKIP LOCKED in MongoDB",
      "url": "https://dev.to/franckpachot/mongodb-equivalent-to-for-update-skip-locked-1m15",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "FOR UPDATE SKIP LOCKED in MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3141770",
      "database": "PostgreSQL",
      "date": "2026-01-01",
      "employment_period": "mongodb-2025",
      "title": "FOR UPDATE SKIP LOCKED in MongoDB",
      "url": "https://dev.to/franckpachot/mongodb-equivalent-to-for-update-skip-locked-1m15",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Final Recommendation When migrating from PostgreSQL to MongoDB—like between any two databases—avoid a direct feature-by-feature mapping, because the systems are fundamentally different.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3146807",
      "database": "MongoDB",
      "date": "2026-01-04",
      "employment_period": "mongodb-2025",
      "title": "UPDATE...RETURNING in MongoDB: ACID and idempotency with findOneAndUpdate()",
      "url": "https://dev.to/franckpachot/acid-and-idempotent-update-returning-in-mongodb-with-findoneandupdate-955",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This enables a single ACID read-write operation that is failure-resilient and safely retryable in MongoDB because it is idempotent.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3146807",
      "database": "PostgreSQL",
      "date": "2026-01-04",
      "employment_period": "mongodb-2025",
      "title": "UPDATE...RETURNING in MongoDB: ACID and idempotency with findOneAndUpdate()",
      "url": "https://dev.to/franckpachot/acid-and-idempotent-update-returning-in-mongodb-with-findoneandupdate-955",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Replacing updateOne-then-find with a single findOneAndUpdate() call, mirroring PostgreSQL's UPDATE...RETURNING, closes the window where a concurrent withdrawal made Bob's balance inconsistent.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3150942",
      "database": "MongoDB",
      "date": "2026-01-05",
      "employment_period": "mongodb-2025",
      "title": "3 Steps to Optimize Your Queries for Speed",
      "url": "https://dev.to/franckpachot/3-steps-to-optimize-your-queries-for-speed-59a2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "An e-commerce order example walks from a normalized MongoDB model to an embedded model, then adds and refines an index, cutting a full collection scan down to reading only the needed documents.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3162423",
      "database": "MongoDB",
      "date": "2026-01-10",
      "employment_period": "mongodb-2025",
      "title": "Which Document class is best to use in Java to read MongoDB documents?",
      "url": "https://dev.to/franckpachot/which-document-class-is-best-to-use-in-java-to-read-mongodb-documents-46n7",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "advantage",
        "possesses stated advantages",
        "reduced cost, risk, or downtime",
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "It is particularly useful when reading documents from MongoDB and passing them to another system unchanged, when working with large documents that you don’t need to parse, when building high-performance data pipelines where parsing overhead matters, and when you need an immutable document representation.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3162423",
      "database": "Oracle Database",
      "date": "2026-01-10",
      "employment_period": "mongodb-2025",
      "title": "Which Document class is best to use in Java to read MongoDB documents?",
      "url": "https://dev.to/franckpachot/which-document-class-is-best-to-use-in-java-to-read-mongodb-documents-46n7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Comparison with PostgreSQL (JSONB) and Oracle Database (OSON) PostgreSQL’s JDBC driver provides no native Java JSON API for JSON or JSONB columns: values are always returned as text, so the application must parse the string into its own document model using a separate JSON library.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3162423",
      "database": "PostgreSQL",
      "date": "2026-01-10",
      "employment_period": "mongodb-2025",
      "title": "Which Document class is best to use in Java to read MongoDB documents?",
      "url": "https://dev.to/franckpachot/which-document-class-is-best-to-use-in-java-to-read-mongodb-documents-46n7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Comparison with PostgreSQL (JSONB) and Oracle Database (OSON) PostgreSQL’s JDBC driver provides no native Java JSON API for JSON or JSONB columns: values are always returned as text, so the application must parse the string into its own document model using a separate JSON library.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3167463",
      "database": "Oracle Database",
      "date": "2026-01-13",
      "employment_period": "mongodb-2025",
      "title": "BSON vs OSON: Different design goals",
      "url": "https://dev.to/franckpachot/bson-vs-oson-different-design-goals-5geg",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The Oracle Java driver supports fast access via `OracleJsonObject.get()`, which avoids instantiating a new object and uses the internal metadata for navigation.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3180126",
      "database": "MongoDB",
      "date": "2026-01-18",
      "employment_period": "mongodb-2025",
      "title": "MongoDB compared to Oracle Database Maximum Availability Architecture",
      "url": "https://dev.to/franckpachot/mongodb-compared-to-oracle-maximum-availability-architecture-mpl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB compared to Oracle Database Maximum Availability Architecture.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3180126",
      "database": "Oracle Database",
      "date": "2026-01-18",
      "employment_period": "mongodb-2025",
      "title": "MongoDB compared to Oracle Database Maximum Availability Architecture",
      "url": "https://dev.to/franckpachot/mongodb-compared-to-oracle-maximum-availability-architecture-mpl",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "possesses stated disadvantages"
      ],
      "evidence_excerpt": "MongoDB compared to Oracle Database Maximum Availability Architecture.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3180126",
      "database": "PostgreSQL",
      "date": "2026-01-18",
      "employment_period": "mongodb-2025",
      "title": "MongoDB compared to Oracle Database Maximum Availability Architecture",
      "url": "https://dev.to/franckpachot/mongodb-compared-to-oracle-maximum-availability-architecture-mpl",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "named source of disadvantages"
      ],
      "evidence_excerpt": "Users looking at Oracle alternatives see the limitations of PostgreSQL in terms of high availability and ask: > _Will MongoDB give me the same high availability (HA), disaster recovery (DR), and zero/near-zero data loss I’ve relied on in Oracle’s Maximum Availability Architecture (MAA)?_ I previously compared Oracle Maximum Availability Architecture with YugabyteDB’s built-in high availability features here.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3180126",
      "database": "YugabyteDB",
      "date": "2026-01-18",
      "employment_period": "mongodb-2025",
      "title": "MongoDB compared to Oracle Database Maximum Availability Architecture",
      "url": "https://dev.to/franckpachot/mongodb-compared-to-oracle-maximum-availability-architecture-mpl",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Users looking at Oracle alternatives see the limitations of PostgreSQL in terms of high availability and ask: > _Will MongoDB give me the same high availability (HA), disaster recovery (DR), and zero/near-zero data loss I’ve relied on in Oracle’s Maximum Availability Architecture (MAA)?_ I previously compared Oracle Maximum Availability Architecture with YugabyteDB’s built-in high availability features here.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3158769",
      "database": "MongoDB",
      "date": "2026-01-23",
      "employment_period": "mongodb-2025",
      "title": "PgBench on MongoDB via Foreign Data Wrapper",
      "url": "https://dev.to/franckpachot/pgbench-on-mongodb-via-foreign-data-wrapper-i5j",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "faster side of comparison"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PgBench on MongoDB via Foreign Data Wrapper.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3158769",
      "database": "PostgreSQL",
      "date": "2026-01-23",
      "employment_period": "mongodb-2025",
      "title": "PgBench on MongoDB via Foreign Data Wrapper",
      "url": "https://dev.to/franckpachot/pgbench-on-mongodb-via-foreign-data-wrapper-i5j",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [
        "slower side of comparison"
      ],
      "evidence_excerpt": "The PostgreSQL foreign data wrapper, while useful, is rarely optimized, adds latency, and offers limited transaction control and pushdown optimizations.",
      "relation_aware": true
    },
    {
      "publication_id": "linkedin:f4tke",
      "database": "Amazon Aurora",
      "date": "2026-01-24",
      "employment_period": "mongodb-2025",
      "title": "Anti-Pattern: Read Replicas Without Sharding",
      "url": "https://www.linkedin.com/pulse/anti-pattern-read-replicas-without-sharding-franck-pachot-f4tke",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "You'll find that Amazon Aurora limits the number of read replicas to 15, even though replication is more efficient than standard PostgreSQL, since only metadata is transmitted by the primary, with replicas reading from distributed storage.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:f4tke",
      "database": "MongoDB",
      "date": "2026-01-24",
      "employment_period": "mongodb-2025",
      "title": "Anti-Pattern: Read Replicas Without Sharding",
      "url": "https://www.linkedin.com/pulse/anti-pattern-read-replicas-without-sharding-franck-pachot-f4tke",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB also uses both caching, but for different formats: fast access to mutable BSON in the WiredTiger memory, and a compressed, minimal version in the Linux cache, which holds more data.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:f4tke",
      "database": "PostgreSQL",
      "date": "2026-01-24",
      "employment_period": "mongodb-2025",
      "title": "Anti-Pattern: Read Replicas Without Sharding",
      "url": "https://www.linkedin.com/pulse/anti-pattern-read-replicas-without-sharding-franck-pachot-f4tke",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "efficient",
        "impressive"
      ],
      "critical_signals": [],
      "evidence_excerpt": "While serving 800 million users is impressive, the PostgreSQL scenario is limited to a read-mostly workload, with applications that require no changes.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3175168",
      "database": "PostgreSQL",
      "date": "2026-01-27",
      "employment_period": "mongodb-2025",
      "title": "CloudNativePG (CNPG) - install (2.18) and first test: simulate transient failure",
      "url": "https://dev.to/franckpachot/cloudnativepg-install-218-and-first-test-transient-failure-4ml",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast",
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "CNPG prioritizes data integrity over fast recovery and, without a consensus protocol like Raft, relies on: - Kubernetes API state - PostgreSQL streaming replication - Instance manager health checks This may cause additional downtime during transient faults, but it prevents split-brain and reduces the risk of complex failovers from short failures.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:zki0e",
      "database": "MongoDB",
      "date": "2026-01-28",
      "employment_period": "mongodb-2025",
      "title": "{ 🌱: \"One year !\"}",
      "url": "https://www.linkedin.com/pulse/one-year-franck-pachot-zki0e",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I’ve never seen such rapid change, which reflects how MongoDB’s flexible schema mindset extends throughout the organization.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:zki0e",
      "database": "YugabyteDB",
      "date": "2026-01-28",
      "employment_period": "mongodb-2025",
      "title": "{ 🌱: \"One year !\"}",
      "url": "https://www.linkedin.com/pulse/one-year-franck-pachot-zki0e",
      "source": "linkedin",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "When I started discussions a year ago, I had no intention of leaving Yugabyte, which is a great company with strong technology.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3214175",
      "database": "Oracle Database",
      "date": "2026-02-01",
      "employment_period": "mongodb-2025",
      "title": "The Doctor's On-Call Shift solved with SQL Assertions",
      "url": "https://dev.to/franckpachot/the-doctors-on-call-shift-solved-with-sql-assertions-30fh",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle AI Database 26ai's SQL assertions enforce 'at least one doctor on call per shift' as a table-level invariant, a cross-row condition standard SQL CHECK constraints cannot express.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3237660",
      "database": "MongoDB",
      "date": "2026-02-06",
      "employment_period": "mongodb-2025",
      "title": "Serializable Transactions in MongoDB: The Doctor's On-Call Shift example",
      "url": "https://dev.to/franckpachot/the-doctors-on-call-shift-with-snapshot-isolation-in-mongodb-18nn",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "flexible",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This approach leverages MongoDB's strengths: - Atomic conditional updates that read and write in one step - Optimistic write conflict handling - Schema validation as an extra integrity check - Flexible indexing on fields inside embedded arrays By embedding all doctors for a shift in a single document, MongoDB allows the invariant to be enforced inside a single atomic update.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3239858",
      "database": "MongoDB",
      "date": "2026-02-07",
      "employment_period": "mongodb-2025",
      "title": "Normal Forms and MongoDB",
      "url": "https://dev.to/franckpachot/normal-forms-and-the-document-model-mongodb-19f9",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In MongoDB, we can keep the embedded structure and handle updates explicitly: ```javascript db.pizzerias.updateMany( { \"offerings.area\": \"Springfield\" }, { $set: { \"offerings.$[o].areaManager\": \"Carol\" } }, { arrayFilters: [{ \"o.area\": \"Springfield\" }] } ) ``` This trades strict BCNF compliance for simpler queries and faster reads.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3196423",
      "database": "MongoDB",
      "date": "2026-02-10",
      "employment_period": "mongodb-2025",
      "title": "{ w: 1 } Asynchronous Writes and Conflict Resolution in MongoDB",
      "url": "https://dev.to/franckpachot/w1-asynchronous-write-and-conflict-resolution-in-mongodb-non-default-5677",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "- This allows MongoDB to safely support lower write concerns, fast ingestion, multi-region latency optimization, and migration workloads.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3235519",
      "database": "MongoDB",
      "date": "2026-02-11",
      "employment_period": "mongodb-2025",
      "title": "Prisma + MongoDB “Hello World”",
      "url": "https://dev.to/franckpachot/prisma-mongodb-hello-world-928",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "advantage",
        "flexible",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB is a document database with a flexible schema.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3255209",
      "database": "MongoDB",
      "date": "2026-02-14",
      "employment_period": "mongodb-2025",
      "title": "Cartesian product (CROSS JOIN) in MongoDB",
      "url": "https://dev.to/franckpachot/cross-join-in-mongodb-ep7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Cartesian product (CROSS JOIN) in MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3258511",
      "database": "MongoDB",
      "date": "2026-02-16",
      "employment_period": "mongodb-2025",
      "title": "Relational composition and Codd's \"connection trap\" in PostgreSQL and MongoDB",
      "url": "https://dev.to/franckpachot/relational-composition-and-codds-connection-trap-in-postgresql-and-mongodb-4k34",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Relational composition and Codd's \"connection trap\" in PostgreSQL and MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3258511",
      "database": "PostgreSQL",
      "date": "2026-02-16",
      "employment_period": "mongodb-2025",
      "title": "Relational composition and Codd's \"connection trap\" in PostgreSQL and MongoDB",
      "url": "https://dev.to/franckpachot/relational-composition-and-codds-connection-trap-in-postgresql-and-mongodb-4k34",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Relational composition and Codd's \"connection trap\" in PostgreSQL and MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:f5hme",
      "database": "MongoDB",
      "date": "2026-02-16",
      "employment_period": "mongodb-2025",
      "title": "Databases after Microservices: PostgreSQL or MongoDB in a Domain‑Driven Design?",
      "url": "https://www.linkedin.com/pulse/databases-after-microservices-postgresql-mongodb-design-franck-pachot-f5hme",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "better",
        "named source of advantages"
      ],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "MongoDB databases lack a central catalog and are lightweight, so having one database per domain doesn't increase operational complexity and can even offer greater flexibility in choosing deployment topology, replication factor, and read and write concerns per domain or service.",
      "relation_aware": true
    },
    {
      "publication_id": "linkedin:f5hme",
      "database": "PostgreSQL",
      "date": "2026-02-16",
      "employment_period": "mongodb-2025",
      "title": "Databases after Microservices: PostgreSQL or MongoDB in a Domain‑Driven Design?",
      "url": "https://www.linkedin.com/pulse/databases-after-microservices-postgresql-mongodb-design-franck-pachot-f5hme",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "excellent",
        "named source of advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This makes PostgreSQL an excellent fit for: Database‑centric architectures where the database remains the primary authority, especially when accessed by un-trusted applications or tenants.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3267532",
      "database": "MongoDB",
      "date": "2026-02-19",
      "employment_period": "mongodb-2025",
      "title": "Top-K queries with MongoDB search indexes (BM25)",
      "url": "https://dev.to/franckpachot/top-k-queries-with-mongodb-search-indexes-bm25-3a41",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "efficient",
        "overcomes stated disadvantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Conceptually, ParadeDB and MongoDB share the same core techniques—immutable segments, LSM‑style merges, and WAND‑style pruning—to make Top‑K queries efficient.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3267532",
      "database": "PostgreSQL",
      "date": "2026-02-19",
      "employment_period": "mongodb-2025",
      "title": "Top-K queries with MongoDB search indexes (BM25)",
      "url": "https://dev.to/franckpachot/top-k-queries-with-mongodb-search-indexes-bm25-3a41",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "ParadeDB brings Tantivy indexing to PostgreSQL via the `pg_search` extension and recently published an excellent article showing where GIN indexes fall short and how BM25 bridges the gap.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3150629",
      "database": "MongoDB",
      "date": "2026-02-21",
      "employment_period": "mongodb-2025",
      "title": "Read‑your‑writes on replicas: PostgreSQL WAIT FOR LSN and MongoDB Causal Consistency",
      "url": "https://dev.to/franckpachot/read-your-writes-on-replicas-postgresql-wait-for-lsn-and-mongodb-causal-consistency-4he2",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Despite persistent myths about consistency, MongoDB delivers strong consistency in a horizontally scalable system with a simple developer experience.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3150629",
      "database": "PostgreSQL",
      "date": "2026-02-21",
      "employment_period": "mongodb-2025",
      "title": "Read‑your‑writes on replicas: PostgreSQL WAIT FOR LSN and MongoDB Causal Consistency",
      "url": "https://dev.to/franckpachot/read-your-writes-on-replicas-postgresql-wait-for-lsn-and-mongodb-causal-consistency-4he2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Read‑your‑writes on replicas: PostgreSQL WAIT FOR LSN and MongoDB Causal Consistency.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3288660",
      "database": "MongoDB",
      "date": "2026-02-27",
      "employment_period": "mongodb-2025",
      "title": "From Relational Algebra to Document Semantics",
      "url": "https://dev.to/franckpachot/from-relational-algebra-to-document-semantics-b00",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "scalable"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Again, the index is used: ```js db.employees.find().sort({ skills: 1 }).explain().queryPlanner.winningPlan ; { isCached: false, stage: 'FETCH', inputStage: { stage: 'IXSCAN', keyPattern: { skills: 1 }, indexName: 'skills_1', isMultiKey: true, multiKeyPaths: { skills: [ 'skills' ] }, isUnique: false, isSparse: false, isPartial: false, indexVersion: 2, direction: 'forward', indexBounds: { skills: [ '[MinKey, MaxKey]' ]",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3295687",
      "database": "PostgreSQL",
      "date": "2026-03-01",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL global statistics on partitionned table require a manual ANALYZE",
      "url": "https://dev.to/aws-heroes/postgresql-global-statistics-on-partitionned-table-require-a-manual-analyze-473h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL global statistics on partitionned table require a manual ANALYZE.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3298952",
      "database": "MongoDB",
      "date": "2026-03-03",
      "employment_period": "mongodb-2025",
      "title": "Updating \"denormalized\" aggregates with \"duplicates\": MongoDB vs. PostgreSQL",
      "url": "https://dev.to/franckpachot/updating-denormalized-aggregates-with-duplicates-mongodb-vs-postgresql-3bi1",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "As a result, the trade‑off is clear: PostgreSQL JSONB–based denormalization mainly optimizes reads while imposing a write cost proportional to document size, whereas MongoDB’s document model supports both read locality and fine‑grained, efficient updates within aggregates.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3298952",
      "database": "PostgreSQL",
      "date": "2026-03-03",
      "employment_period": "mongodb-2025",
      "title": "Updating \"denormalized\" aggregates with \"duplicates\": MongoDB vs. PostgreSQL",
      "url": "https://dev.to/franckpachot/updating-denormalized-aggregates-with-duplicates-mongodb-vs-postgresql-3bi1",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "## Comparison with PostgreSQL and JSONB SQL databases were designed for normalisation, and even if they accept some JSON datatypes, they may not have the same optimisations, and such an update is much more expensive.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3397246",
      "database": "MongoDB",
      "date": "2026-03-24",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Transaction Performance",
      "url": "https://dev.to/franckpachot/mongodb-transaction-performance-4dc7",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "better"
      ],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "Single-document writes in MongoDB already use internal WriteUnitOfWork/RecoveryUnit ACID transactions, so multi-document transactions add memory tracking but aren't uniformly slower.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3400093",
      "database": "MongoDB",
      "date": "2026-03-25",
      "employment_period": "mongodb-2025",
      "title": "Non-First Normal Forms and MongoDB: an alternative to 4NF to address 3NF anomalies",
      "url": "https://dev.to/franckpachot/non-first-normal-forms-1nf-and-mongodb-an-alternative-to-4nf-to-address-3nf-anomalies-17i8",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "delivers stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Non-First Normal Forms and MongoDB: an alternative to 4NF to address 3NF anomalies.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3417259",
      "database": "MongoDB",
      "date": "2026-03-29",
      "employment_period": "mongodb-2025",
      "title": "Consistency boundaries in SQL databases vs. MongoDB",
      "url": "https://dev.to/franckpachot/consistency-boundaries-in-sql-vs-mongodb-54dm",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3424907",
      "database": "Oracle Database",
      "date": "2026-03-29",
      "employment_period": "mongodb-2025",
      "title": "SQL Assertions, ANSI join, and ORA-08697",
      "url": "https://dev.to/franckpachot/sql-assertions-ansi-join-and-ora-08697-3bl9",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I reproduced this in a local environment to trace the SQL statements (`ALTER SESSION SET EVENTS 'sql_trace bind=false, wait=false'`) and found that Oracle internally checked this constraint with: ```sql /* SQL Analyze(250,0) */ SELECT /*+ ALL_ROWS BYPASS_RECURSIVE_CHECK */ 1 FROM \"SYS\".\"DUAL\" WHERE ( NOT EXISTS ( SELECT 1 FROM emp_salary s JOIN emp_commission c ON s.empno = c.empno WHERE s.salary + c.commission > 115",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3431931",
      "database": "MongoDB",
      "date": "2026-03-30",
      "employment_period": "mongodb-2025",
      "title": "Read Concern \"snapshot\" for snapshot isolation outside explicit transactions",
      "url": "https://dev.to/franckpachot/read-concern-snapshot-for-snapshot-isolation-outside-explicit-transactions-d5p",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB's snapshot read concern lets a multi-document scan read a consistent point-in-time view without an explicit transaction, avoiding the newer-majority-snapshot drift possible under majority.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3343268",
      "database": "Amazon DynamoDB",
      "date": "2026-04-01",
      "employment_period": "mongodb-2025",
      "title": "Single-Cluster Duality View 🃏",
      "url": "https://dev.to/franckpachot/the-single-duality-view-pattern-can-sqljson-preserve-aggregate-locality-4ifd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The benefit of this design relies heavily on DynamoDB specifics: the storage internals, where items are partitioned and clustered by their key, and the billing model, where you pay per table request unit.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3343268",
      "database": "MongoDB",
      "date": "2026-04-01",
      "employment_period": "mongodb-2025",
      "title": "Single-Cluster Duality View 🃏",
      "url": "https://dev.to/franckpachot/the-single-duality-view-pattern-can-sqljson-preserve-aggregate-locality-4ifd",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 5,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [
        "advantage",
        "flexible",
        "named source of advantages",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "We have lost the main advantage of MongoDB: data that's accessed together should be stored together.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3343268",
      "database": "MySQL",
      "date": "2026-04-01",
      "employment_period": "mongodb-2025",
      "title": "Single-Cluster Duality View 🃏",
      "url": "https://dev.to/franckpachot/the-single-duality-view-pattern-can-sqljson-preserve-aggregate-locality-4ifd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Proposes a Single-Cluster Duality View that keeps data physically together like MongoDB's Single Collection Pattern, unlike DynamoDB single-table design or Oracle/MySQL duality views spanning blocks.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3343268",
      "database": "Oracle Database",
      "date": "2026-04-01",
      "employment_period": "mongodb-2025",
      "title": "Single-Cluster Duality View 🃏",
      "url": "https://dev.to/franckpachot/the-single-duality-view-pattern-can-sqljson-preserve-aggregate-locality-4ifd",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Proposes a Single-Cluster Duality View that keeps data physically together like MongoDB's Single Collection Pattern, unlike DynamoDB single-table design or Oracle/MySQL duality views spanning blocks.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3463621",
      "database": "Amazon DynamoDB",
      "date": "2026-04-07",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Query Planner",
      "url": "https://dev.to/franckpachot/mongodb-query-planner-io2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike DynamoDB or Redis, which drop query planning entirely, MongoDB keeps an empirical multi-planner that trial-runs candidate indexes and reuses the winning plan until it stops being optimal.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3463621",
      "database": "MongoDB",
      "date": "2026-04-07",
      "employment_period": "mongodb-2025",
      "title": "MongoDB Query Planner",
      "url": "https://dev.to/franckpachot/mongodb-query-planner-io2",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB Query Planner.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3465690",
      "database": "MongoDB",
      "date": "2026-04-07",
      "employment_period": "mongodb-2025",
      "title": "The origins of MongoDB",
      "url": "https://dev.to/franckpachot/the-origins-of-mongodb-557p",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "product-wide",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "faster",
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "MongoDB was first described by its founders as an object-oriented DBMS, offering an interface similar to an ORM but as the native database interface rather than a translation layer, making it faster, more powerful, and easier to set up.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3520847",
      "database": "MongoDB",
      "date": "2026-04-18",
      "employment_period": "mongodb-2025",
      "title": "Mutable BSON and Oracle OSON",
      "url": "https://dev.to/franckpachot/mutable-bson-and-oracle-oson-2o04",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "advantage",
        "named source of advantages",
        "powerful"
      ],
      "critical_signals": [
        "limitation"
      ],
      "evidence_excerpt": "So there are two formats: the mutable BSON that the database actually works on in memory for query processing and updates, and the on-disk raw BSON that, on purpose, strips any unnecessary metadata and compresses it, to maximize the OS filesystem cache usage, and fits to the major advantage of MongoDB for documents: read/write a document in a single I/O.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3520847",
      "database": "Oracle Database",
      "date": "2026-04-18",
      "employment_period": "mongodb-2025",
      "title": "Mutable BSON and Oracle OSON",
      "url": "https://dev.to/franckpachot/mutable-bson-and-oracle-oson-2o04",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "AskTom Live is a great source of information from Oracle developer advocates and product managers, but I recently came across a clickbait marketing title (\"_Not All Binary Protocols Are Created Equal: The Science Behind OSON's 529x Performance Advantage_\") which compares apples to oranges, and it's an opportunity to explain what BSON is, the binary JSON format used by MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3549342",
      "database": "MongoDB",
      "date": "2026-04-25",
      "employment_period": "mongodb-2025",
      "title": "Anti-Join in MongoDB",
      "url": "https://dev.to/franckpachot/anti-join-in-mongodb-23eo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Anti-Join in MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3549342",
      "database": "PostgreSQL",
      "date": "2026-04-25",
      "employment_period": "mongodb-2025",
      "title": "Anti-Join in MongoDB",
      "url": "https://dev.to/franckpachot/anti-join-in-mongodb-23eo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A PostgreSQL NOT EXISTS subquery finding users with no paid transactions compiles into a Nested Loop Anti Join plan that short-circuits as soon as one matching transaction row is found.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:fdw3e",
      "database": "MongoDB",
      "date": "2026-04-29",
      "employment_period": "mongodb-2025",
      "title": "I need a database. What should I use?",
      "url": "https://www.linkedin.com/pulse/i-need-database-what-should-use-franck-pachot-fdw3e",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The reasoning was familiar to anyone who has spent time on Hacker News, LinkedIn, or Twitter: Postgres handles JSON well, it is great for OLTP, the ecosystem is huge, and — in the buried line that unraveled everything — MongoDB would make sense only “if you’re certain your data is deeply nested documents with no need for joins.” That's where I started pulling the thread.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:fdw3e",
      "database": "PostgreSQL",
      "date": "2026-04-29",
      "employment_period": "mongodb-2025",
      "title": "I need a database. What should I use?",
      "url": "https://www.linkedin.com/pulse/i-need-database-what-should-use-franck-pachot-fdw3e",
      "source": "linkedin",
      "evaluation": 2,
      "positive_weight": 6,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "fast",
        "great",
        "impressive",
        "robust"
      ],
      "critical_signals": [],
      "evidence_excerpt": "To get another point of view, Amplify AI published reports on what AI coding agents choose: Stepping back from AI considerations, it is impressive to see the PostgreSQL community build a robust database without any Product Managers, and it is the most popular choice without any Product Marketing.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3601574",
      "database": "Oracle Database",
      "date": "2026-05-02",
      "employment_period": "mongodb-2025",
      "title": "Codd's Connection Trap and Oracle's JOIN TO ONE",
      "url": "https://dev.to/franckpachot/codds-connection-trap-and-oracles-join-to-one-292f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Codd's Connection Trap and Oracle's JOIN TO ONE.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:fphre",
      "database": "PostgreSQL",
      "date": "2026-05-14",
      "employment_period": "mongodb-2025",
      "title": "PostgreSQL’s \"random_page_cost\" isn’t just about disk latency — and the default is often right when your indexes are",
      "url": "https://www.linkedin.com/pulse/postgresqls-randompagecost-isnt-just-disk-latency-default-pachot-fphre",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 2,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "advantage",
        "better",
        "faster"
      ],
      "critical_signals": [
        "worse"
      ],
      "evidence_excerpt": "Explains that PostgreSQL random_page_cost models cache behavior and CPU work as well as storage latency, so lowering it merely because disks are SSDs can produce worse plans.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3668423",
      "database": "Oracle Database",
      "date": "2026-05-15",
      "employment_period": "mongodb-2025",
      "title": "Avoiding range overlaps in PostgreSQL with EXCLUDE constraint, better than serializable or assertions",
      "url": "https://dev.to/franckpachot/postgresql-exclude-constraints-for-better-concurrency-than-serializable-pob",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "workaround",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [
        "named source of disadvantages"
      ],
      "evidence_excerpt": "In a previous post of this series, we saw how **Oracle SQL Assertions** can work around the limitations of Oracle's Snapshot Isolation (improperly called SERIALIZABLE).",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3668423",
      "database": "PostgreSQL",
      "date": "2026-05-15",
      "employment_period": "mongodb-2025",
      "title": "Avoiding range overlaps in PostgreSQL with EXCLUDE constraint, better than serializable or assertions",
      "url": "https://dev.to/franckpachot/postgresql-exclude-constraints-for-better-concurrency-than-serializable-pob",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "bug diagnosis",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "better",
        "better side of comparison",
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Avoiding range overlaps in PostgreSQL with EXCLUDE constraint, better than serializable or assertions.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3716806",
      "database": "PostgreSQL",
      "date": "2026-05-26",
      "employment_period": "mongodb-2025",
      "title": "The Autovacuum Scale Factor Problem at Scale - Know Your Defaults",
      "url": "https://dev.to/franckpachot/the-autovacuum-scale-factor-problem-at-scale-know-your-defaults-5a9o",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL's autovacuum threshold combines a fixed row count with a scale-factor percentage of table size, so tables with lots of cold, static data get inflated thresholds that delay maintenance.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3702272",
      "database": "Amazon DocumentDB",
      "date": "2026-05-29",
      "employment_period": "mongodb-2025",
      "title": "$exists and non-sparse indexes in MongoDB and in other DocumentDB",
      "url": "https://dev.to/franckpachot/exists-and-non-sparse-indexes-in-mongodb-and-in-other-documentdb-19e3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "We cannot create a sparse index on Oracle Database: ```js ora> db.test.dropIndex({ num: 1 }) { nIndexesWas: 2, ok: 1 } ora> db.test.createIndex({ num: 1 } , { sparse: 1 }) MongoServerError[MONGO-67]: Unsupported index option: sparse ``` ## Amazon DocumentDB (AWS) AWS DocumentDB speaks the MongoDB wire protocol but is built on a completely different architecture.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3702272",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2026-05-29",
      "employment_period": "mongodb-2025",
      "title": "$exists and non-sparse indexes in MongoDB and in other DocumentDB",
      "url": "https://dev.to/franckpachot/exists-and-non-sparse-indexes-in-mongodb-and-in-other-documentdb-19e3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "$exists and non-sparse indexes in MongoDB and in other DocumentDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3702272",
      "database": "MongoDB",
      "date": "2026-05-29",
      "employment_period": "mongodb-2025",
      "title": "$exists and non-sparse indexes in MongoDB and in other DocumentDB",
      "url": "https://dev.to/franckpachot/exists-and-non-sparse-indexes-in-mongodb-and-in-other-documentdb-19e3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [
        "unsupported"
      ],
      "evidence_excerpt": "We cannot create a sparse index on Oracle Database: ```js ora> db.test.dropIndex({ num: 1 }) { nIndexesWas: 2, ok: 1 } ora> db.test.createIndex({ num: 1 } , { sparse: 1 }) MongoServerError[MONGO-67]: Unsupported index option: sparse ``` ## Amazon DocumentDB (AWS) AWS DocumentDB speaks the MongoDB wire protocol but is built on a completely different architecture.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3702272",
      "database": "Oracle Database",
      "date": "2026-05-29",
      "employment_period": "mongodb-2025",
      "title": "$exists and non-sparse indexes in MongoDB and in other DocumentDB",
      "url": "https://dev.to/franckpachot/exists-and-non-sparse-indexes-in-mongodb-and-in-other-documentdb-19e3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "We cannot create a sparse index on Oracle Database: ```js ora> db.test.dropIndex({ num: 1 }) { nIndexesWas: 2, ok: 1 } ora> db.test.createIndex({ num: 1 } , { sparse: 1 }) MongoServerError[MONGO-67]: Unsupported index option: sparse ``` ## Amazon DocumentDB (AWS) AWS DocumentDB speaks the MongoDB wire protocol but is built on a completely different architecture.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3702272",
      "database": "PostgreSQL",
      "date": "2026-05-29",
      "employment_period": "mongodb-2025",
      "title": "$exists and non-sparse indexes in MongoDB and in other DocumentDB",
      "url": "https://dev.to/franckpachot/exists-and-non-sparse-indexes-in-mongodb-and-in-other-documentdb-19e3",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The query planner and storage engine are specific to Amazon DocumentDB and deliver performance characteristics that differ from both MongoDB and standard PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3780540",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2026-05-30",
      "employment_period": "mongodb-2025",
      "title": "BSON and OSON: documents are designed to be nested, not flat",
      "url": "https://dev.to/franckpachot/bson-and-oson-documents-are-designed-to-be-nested-not-flat-3b65",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Whether that is BSON in MongoDB, BSON via the DocumentDB extension for PostgreSQL, JSONB, or OSON, flat documents with hundreds of top-level fields are not just harder to read — they are measurably slower to query and heavier on storage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3780540",
      "database": "MongoDB",
      "date": "2026-05-30",
      "employment_period": "mongodb-2025",
      "title": "BSON and OSON: documents are designed to be nested, not flat",
      "url": "https://dev.to/franckpachot/bson-and-oson-documents-are-designed-to-be-nested-not-flat-3b65",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Whether that is BSON in MongoDB, BSON via the DocumentDB extension for PostgreSQL, JSONB, or OSON, flat documents with hundreds of top-level fields are not just harder to read — they are measurably slower to query and heavier on storage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3780540",
      "database": "Oracle Database",
      "date": "2026-05-30",
      "employment_period": "mongodb-2025",
      "title": "BSON and OSON: documents are designed to be nested, not flat",
      "url": "https://dev.to/franckpachot/bson-and-oson-documents-are-designed-to-be-nested-not-flat-3b65",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Critiquing Oracle's YCSB and flat-document OSON benchmarks against BSON, it argues thousands of nested fields per document are acceptable in a document model, unlike flat SQL tables.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3780540",
      "database": "PostgreSQL",
      "date": "2026-05-30",
      "employment_period": "mongodb-2025",
      "title": "BSON and OSON: documents are designed to be nested, not flat",
      "url": "https://dev.to/franckpachot/bson-and-oson-documents-are-designed-to-be-nested-not-flat-3b65",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "Whether that is BSON in MongoDB, BSON via the DocumentDB extension for PostgreSQL, JSONB, or OSON, flat documents with hundreds of top-level fields are not just harder to read — they are measurably slower to query and heavier on storage.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3684071",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2026-06-01",
      "employment_period": "microsoft-2026",
      "title": "Filter on Children, Sort by Parent: One-to-Many Compound Index Strategies in PostgreSQL",
      "url": "https://dev.to/franckpachot/filter-on-children-sort-by-parent-one-to-many-compound-index-strategies-in-postgresql-1clj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "### DocumentDB Multi-Key Index (PostgreSQL with extended RUM) While standard PostgreSQL GIN indexes cannot return ordered results, the DocumentDB extension for PostgreSQL provides a true multi-key index implementation.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3684071",
      "database": "MongoDB",
      "date": "2026-06-01",
      "employment_period": "microsoft-2026",
      "title": "Filter on Children, Sort by Parent: One-to-Many Compound Index Strategies in PostgreSQL",
      "url": "https://dev.to/franckpachot/filter-on-children-sort-by-parent-one-to-many-compound-index-strategies-in-postgresql-1clj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Approximating a MongoDB compound index over embedded children in PostgreSQL requires denormalizing onto the parent or child row and maintaining consistency with cascading foreign keys or triggers.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3684071",
      "database": "PostgreSQL",
      "date": "2026-06-01",
      "employment_period": "microsoft-2026",
      "title": "Filter on Children, Sort by Parent: One-to-Many Compound Index Strategies in PostgreSQL",
      "url": "https://dev.to/franckpachot/filter-on-children-sort-by-parent-one-to-many-compound-index-strategies-in-postgresql-1clj",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Filter on Children, Sort by Parent: One-to-Many Compound Index Strategies in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3817821",
      "database": "Azure HorizonDB",
      "date": "2026-06-05",
      "employment_period": "microsoft-2026",
      "title": "Getting Started with pg_durable: Workflows Inside PostgreSQL",
      "url": "https://dev.to/franckpachot/getting-started-with-pgdurable-durable-workflows-inside-postgresql-3980",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "One second later, it is completed: ```sql postgres=> SELECT df.status('393f09e0'); status ----------- completed (1 row) ``` The result can be fetched as a document with a list of rows: ```sql postgres=> SELECT df.result('393f09e0'); result ------------------------------------------------------------------ {\"rows\": [{\"message\": \"Hello, durable world!\"}], \"row_count\": 1} (1 row) ``` I used the same \"Hello, durable worl",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3817821",
      "database": "PostgreSQL",
      "date": "2026-06-05",
      "employment_period": "microsoft-2026",
      "title": "Getting Started with pg_durable: Workflows Inside PostgreSQL",
      "url": "https://dev.to/franckpachot/getting-started-with-pgdurable-durable-workflows-inside-postgresql-3980",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "resilient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Building the pg_durable extension from source with Rust and pgrx on PostgreSQL 17 shows how it orchestrates crash-resilient, SQL-defined workflows for ETL and long-running background jobs.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3694387",
      "database": "MongoDB",
      "date": "2026-06-07",
      "employment_period": "microsoft-2026",
      "title": "Extended RUM in DocumentDB extension for PostgreSQL: Efficient ESR (Equality, Sort, Range) Queries",
      "url": "https://dev.to/franckpachot/extended-rum-in-documentdb-extension-for-postgresql-efficient-esr-equality-sort-range-queries-5bkj",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "capability benchmark"
      ],
      "critical_signals": [],
      "evidence_excerpt": "A year after finding RUM indexes couldn't replace MongoDB compound indexes for sorted queries, the May 2026 DocumentDB extension's Extended RUM index preserves key ordering for pagination.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3694387",
      "database": "PostgreSQL",
      "date": "2026-06-07",
      "employment_period": "microsoft-2026",
      "title": "Extended RUM in DocumentDB extension for PostgreSQL: Efficient ESR (Equality, Sort, Range) Queries",
      "url": "https://dev.to/franckpachot/extended-rum-in-documentdb-extension-for-postgresql-efficient-esr-equality-sort-range-queries-5bkj",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Extended RUM in DocumentDB extension for PostgreSQL: Efficient ESR (Equality, Sort, Range) Queries.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3801984",
      "database": "PostgreSQL",
      "date": "2026-06-09",
      "employment_period": "microsoft-2026",
      "title": "GIN: Understanding PostgreSQL's Inverted Index and Its Limitations",
      "url": "https://dev.to/franckpachot/gin-understanding-postgresqls-inverted-index-and-its-limitations-40hn",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 2,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [
        "possesses stated disadvantages",
        "slower"
      ],
      "evidence_excerpt": "As clarified by Artur Zakirov (Postgres Professional), \"_GIN supports it, but it requires additional bitmap heap scan and so it is slower._\" - No `LIMIT` pushdown — must scan the entire posting list even for a small number of results.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:3804307",
      "database": "PostgreSQL",
      "date": "2026-06-09",
      "employment_period": "microsoft-2026",
      "title": "RUM—Storing More in the Index",
      "url": "https://dev.to/franckpachot/rum-storing-more-in-the-index-4hoe",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "RUM, built by Alexander Korotkov and colleagues at Postgres Professional, extends each GIN posting-list entry with an extra datum alongside the TID to fix full-text ranking and ordering performance.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:u1kre",
      "database": "PostgreSQL",
      "date": "2026-06-11",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL Average Active Sessions Dashboard in VS Code",
      "url": "https://www.linkedin.com/pulse/postgresql-average-active-sessions-dashboard-vs-code-franck-pachot-u1kre",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "improved",
        "works well"
      ],
      "critical_signals": [],
      "evidence_excerpt": "The PostgreSQL extension for VS Code includes many features that help developers interact with their database directly from the IDE: I’d love to hear your feedback—what works well, and what could be improved?",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3883285",
      "database": "Azure HorizonDB",
      "date": "2026-06-12",
      "employment_period": "microsoft-2026",
      "title": "HorizonDB preview: automate a reproducible lab with ARM",
      "url": "https://dev.to/franckpachot/horizondb-preview-automate-a-reproducible-lab-with-arm-2515",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "HorizonDB preview: automate a reproducible lab with ARM.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3883285",
      "database": "PostgreSQL",
      "date": "2026-06-12",
      "employment_period": "microsoft-2026",
      "title": "HorizonDB preview: automate a reproducible lab with ARM",
      "url": "https://dev.to/franckpachot/horizondb-preview-automate-a-reproducible-lab-with-arm-2515",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "great"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This is a great opportunity to explore how well PostgreSQL works with your existing applications.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:q4ede",
      "database": "Azure HorizonDB",
      "date": "2026-06-15",
      "employment_period": "microsoft-2026",
      "title": "Provision PostgreSQL from VS Code",
      "url": "https://www.linkedin.com/pulse/provision-postgresql-from-vs-code-franck-pachot-q4ede",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "With the PostgreSQL extension in Visual Studio Code, you can easily set up and connect to PostgreSQL environments—whether it's a local Docker container, Azure Flexible Server, or HorizonDB—without ever leaving your IDE.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:q4ede",
      "database": "PostgreSQL",
      "date": "2026-06-15",
      "employment_period": "microsoft-2026",
      "title": "Provision PostgreSQL from VS Code",
      "url": "https://www.linkedin.com/pulse/provision-postgresql-from-vs-code-franck-pachot-q4ede",
      "source": "linkedin",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "In Visual Studio Code, with Microsoft's PostgreSQL extension from Microsoft , you can provision a PostgreSQL database: a local PostgreSQL instance on Docker using the official community image built by the PostgreSQL docker community a managed PostgreSQL on Azure, also known as Azure Database for PostgreSQL Flexible Server , provided by Microsoft or HorizonDB —the PostgreSQL-compatible service with disaggregated stora",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3892077",
      "database": "Azure HorizonDB",
      "date": "2026-06-17",
      "employment_period": "microsoft-2026",
      "title": "HorizonDB cache hierarchy: RAM, NVMe SSD, and multi-AZ storage behind PostgreSQL",
      "url": "https://dev.to/franckpachot/horizondb-cache-hierarchy-ram-nvme-ssd-and-multi-az-storage-behind-postgresql-k82",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "HorizonDB cache hierarchy: RAM, NVMe SSD, and multi-AZ storage behind PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3892077",
      "database": "PostgreSQL",
      "date": "2026-06-17",
      "employment_period": "microsoft-2026",
      "title": "HorizonDB cache hierarchy: RAM, NVMe SSD, and multi-AZ storage behind PostgreSQL",
      "url": "https://dev.to/franckpachot/horizondb-cache-hierarchy-ram-nvme-ssd-and-multi-az-storage-behind-postgresql-k82",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 1,
      "critical_weight": 3,
      "mixed": true,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [
        "slower"
      ],
      "evidence_excerpt": "The observed latency and wait events indicate an additional cache tier below PostgreSQL, where normal reads are served from a fast local NVMe SSD cache, while slower peaks use a slower storage path.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3940900",
      "database": "Azure HorizonDB",
      "date": "2026-06-22",
      "employment_period": "microsoft-2026",
      "title": "Vector Search with Filters: pgvector vs DiskANN on HorizonDB",
      "url": "https://dev.to/franckpachot/vector-search-with-filters-pgvector-vs-diskann-on-horizondb-i2k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Vector Search with Filters: pgvector vs DiskANN on HorizonDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3940900",
      "database": "PostgreSQL",
      "date": "2026-06-22",
      "employment_period": "microsoft-2026",
      "title": "Vector Search with Filters: pgvector vs DiskANN on HorizonDB",
      "url": "https://dev.to/franckpachot/vector-search-with-filters-pgvector-vs-diskann-on-horizondb-i2k",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "This post repeats the same experiment and dataset but compares two methods: - **pgvector with HNSW**, a popular PostgreSQL extension - **HorizonDB with DiskANN**, Microsoft’s vector index The goal is to understand what happens when similarity search is combined with filtering.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3981820",
      "database": "Oracle Database",
      "date": "2026-06-25",
      "employment_period": "microsoft-2026",
      "title": "Oracle FDW on Azure Database for PostgreSQL",
      "url": "https://dev.to/franckpachot/oracle-fdw-on-azure-database-for-postgresql-510c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle FDW on Azure Database for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3981820",
      "database": "PostgreSQL",
      "date": "2026-06-25",
      "employment_period": "microsoft-2026",
      "title": "Oracle FDW on Azure Database for PostgreSQL",
      "url": "https://dev.to/franckpachot/oracle-fdw-on-azure-database-for-postgresql-510c",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle FDW on Azure Database for PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3964535",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2026-06-26",
      "employment_period": "microsoft-2026",
      "title": "$lookup join strategies: understanding the trade-offs with flexible documents",
      "url": "https://dev.to/franckpachot/lookup-join-strategies-understanding-the-trade-offs-with-flexible-documents-ncf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL can also gain optimizations that benefit DocumentDB queries.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3964535",
      "database": "MongoDB",
      "date": "2026-06-26",
      "employment_period": "microsoft-2026",
      "title": "$lookup join strategies: understanding the trade-offs with flexible documents",
      "url": "https://dev.to/franckpachot/lookup-join-strategies-understanding-the-trade-offs-with-flexible-documents-ncf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [
        "slow"
      ],
      "evidence_excerpt": "It's slightly faster, taking 71 seconds instead of 88 seconds, yet it remains a nested loop with 5 million iterations: ```plaintext Nested Loop (actual time=17..48170 rows=5000000 loops=1) -> Seq Scan on documents_11 collection (rows=5000000 loops=1) -> Index Scan using _id_ on documents_12 (rows=1 loops=5000000) Index Cond: (object_id = ANY (bson_dollar_lookup_extract_filter_array(...))) Execution Time: 70578 ms ```",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3964535",
      "database": "PostgreSQL",
      "date": "2026-06-26",
      "employment_period": "microsoft-2026",
      "title": "$lookup join strategies: understanding the trade-offs with flexible documents",
      "url": "https://dev.to/franckpachot/lookup-join-strategies-understanding-the-trade-offs-with-flexible-documents-ncf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Running $lookup on the open-source DocumentDB extension for PostgreSQL shows how flexible field semantics like arrays restrict join optimization compared to MongoDB's native join strategies.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3999543",
      "database": "Azure HorizonDB",
      "date": "2026-06-27",
      "employment_period": "microsoft-2026",
      "title": "Azure AI on HorizonDB (Microsoft Foundry Azure OpenAI from SQL)",
      "url": "https://dev.to/franckpachot/azure-ai-on-horizondb-fbk",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Azure AI on HorizonDB (Microsoft Foundry Azure OpenAI from SQL).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:3999543",
      "database": "PostgreSQL",
      "date": "2026-06-27",
      "employment_period": "microsoft-2026",
      "title": "Azure AI on HorizonDB (Microsoft Foundry Azure OpenAI from SQL)",
      "url": "https://dev.to/franckpachot/azure-ai-on-horizondb-fbk",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "powerful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Check out this article on integrating Azure AI with HorizonDB: + + - **Generative AI Functions**: The `azure_ai` extension brings powerful generative AI capabilities directly to PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4022044",
      "database": "Azure HorizonDB",
      "date": "2026-06-29",
      "employment_period": "microsoft-2026",
      "title": "Hybrid Search (Full-Text and Vector Similarity) in HorizonDB",
      "url": "https://dev.to/franckpachot/hybrid-search-full-text-and-vector-similarity-in-horizondb-3a5f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Hybrid Search (Full-Text and Vector Similarity) in HorizonDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4022044",
      "database": "PostgreSQL",
      "date": "2026-06-29",
      "employment_period": "microsoft-2026",
      "title": "Hybrid Search (Full-Text and Vector Similarity) in HorizonDB",
      "url": "https://dev.to/franckpachot/hybrid-search-full-text-and-vector-similarity-in-horizondb-3a5f",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "HorizonDB’s BM25 full-text search brings BM25 ranking into PostgreSQL without a separate Elasticsearch/OpenSearch Search service.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4014806",
      "database": "PostgreSQL",
      "date": "2026-06-30",
      "employment_period": "microsoft-2026",
      "title": "Multi-block buffered reads in PostgreSQL 19 (IO combine & prefetch)",
      "url": "https://dev.to/franckpachot/multi-block-buffered-reads-in-postgresql-19-io-combine-prefetch-3dl2",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "product-wide",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "excellent"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Meanwhile, you can read about it from the excellent The Internals of PostgreSQL by Hironobu Suzuki: In this post, I'll use the `workers` IO method, which still issues `pread64()` calls, but with variable size.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4041071",
      "database": "PostgreSQL",
      "date": "2026-07-01",
      "employment_period": "microsoft-2026",
      "title": "kernel asynchronous reads in PostgreSQL 19 (io_uring)",
      "url": "https://dev.to/franckpachot/iouring-buffered-reads-in-postgresql-19-iouring-mcn",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "kernel asynchronous reads in PostgreSQL 19 (io_uring).",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4053428",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2026-07-03",
      "employment_period": "microsoft-2026",
      "title": "Extended RUM in DocumentDB: B-tree-like ordered scans for flexible BSON in PostgreSQL",
      "url": "https://dev.to/franckpachot/extended-rum-in-documentdb-b-tree-like-ordered-scans-for-flexible-bson-in-postgresql-4nje",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 4,
      "critical_weight": 0,
      "mixed": false,
      "intent": "limitation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "DocumentDB's Extended RUM access method builds composite index terms with an ordering transform, letting it filter, sort, and stop at LIMIT in one Index Scan over flexible BSON arrays.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4053428",
      "database": "MongoDB",
      "date": "2026-07-03",
      "employment_period": "microsoft-2026",
      "title": "Extended RUM in DocumentDB: B-tree-like ordered scans for flexible BSON in PostgreSQL",
      "url": "https://dev.to/franckpachot/extended-rum-in-documentdb-b-tree-like-ordered-scans-for-flexible-bson-in-postgresql-4nje",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The key addition is the ordered composite index, which matches the features of a multi-key index in MongoDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4053428",
      "database": "PostgreSQL",
      "date": "2026-07-03",
      "employment_period": "microsoft-2026",
      "title": "Extended RUM in DocumentDB: B-tree-like ordered scans for flexible BSON in PostgreSQL",
      "url": "https://dev.to/franckpachot/extended-rum-in-documentdb-b-tree-like-ordered-scans-for-flexible-bson-in-postgresql-4nje",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Extended RUM in DocumentDB: B-tree-like ordered scans for flexible BSON in PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4071535",
      "database": "PostgreSQL",
      "date": "2026-07-05",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL query planner parameters and prepared statements",
      "url": "https://dev.to/franckpachot/postgresql-query-planner-parameters-and-prepared-statements-3o5a",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "operational guidance",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL query planner parameters and prepared statements.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4081710",
      "database": "PostgreSQL",
      "date": "2026-07-07",
      "employment_period": "microsoft-2026",
      "title": "What happens when a PostgreSQL backend crashes?",
      "url": "https://dev.to/franckpachot/what-happens-when-a-postgresql-backend-crashes-3md",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "What happens when a PostgreSQL backend crashes?.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4099802",
      "database": "Oracle Database",
      "date": "2026-07-09",
      "employment_period": "microsoft-2026",
      "title": "“PostgreSQL resolves uniqueness through heap tuple visibility”",
      "url": "https://dev.to/franckpachot/postgresql-resolves-uniqueness-through-heap-tuple-visibility-bkp",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Unlike Oracle, where unique B-tree keys alone prevent duplicates, PostgreSQL appends the tuple ID to every index entry, enforcing uniqueness at the heap-visibility level for MVCC.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4099802",
      "database": "PostgreSQL",
      "date": "2026-07-09",
      "employment_period": "microsoft-2026",
      "title": "“PostgreSQL resolves uniqueness through heap tuple visibility”",
      "url": "https://dev.to/franckpachot/postgresql-resolves-uniqueness-through-heap-tuple-visibility-bkp",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "advantage",
        "delivers stated advantages",
        "possesses stated advantages"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Although this might seem like a performance weakness compared to block-level MVCC and using the B-tree key itself to detect duplicate key violations, PostgreSQL's design brings a major advantage: extensibility.",
      "relation_aware": true
    },
    {
      "publication_id": "dev.to:4111703",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2026-07-10",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL as a converged database with pglayers-full",
      "url": "https://dev.to/franckpachot/postgresql-as-a-converged-database-with-pglayers-full-2a7h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The ghcr.io/pglayers/pglayers-full Docker image bundles PostgreSQL with a large extension set, including a pre-installed DocumentDB extension exposing a MongoDB-compatible endpoint out of the box.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4111703",
      "database": "MongoDB",
      "date": "2026-07-10",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL as a converged database with pglayers-full",
      "url": "https://dev.to/franckpachot/postgresql-as-a-converged-database-with-pglayers-full-2a7h",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 1,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 13,
      "positive_signals": [
        "faster"
      ],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "## Multi-model emulations Although other converged databases and MongoDB emulations exist, they typically lack the same level of flexibility and features.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4111703",
      "database": "PostgreSQL",
      "date": "2026-07-10",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL as a converged database with pglayers-full",
      "url": "https://dev.to/franckpachot/postgresql-as-a-converged-database-with-pglayers-full-2a7h",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 8,
      "positive_signals": [
        "flexible",
        "robust"
      ],
      "critical_signals": [],
      "evidence_excerpt": "This highlights PostgreSQL’s robust open-source ecosystem and community.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4168141",
      "database": "DocumentDB (PostgreSQL)",
      "date": "2026-07-17",
      "employment_period": "microsoft-2026",
      "title": "DocumentDB on YugabyteDB",
      "url": "https://dev.to/franckpachot/documentdb-on-yugabytedb-4na0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "DocumentDB on YugabyteDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4168141",
      "database": "MongoDB",
      "date": "2026-07-17",
      "employment_period": "microsoft-2026",
      "title": "DocumentDB on YugabyteDB",
      "url": "https://dev.to/franckpachot/documentdb-on-yugabytedb-4na0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "YugabyteDB 2026.1 previews the DocumentDB extension for MongoDB compatibility, launched via preview flags in a Docker container, though it still lacks secondary indexes and ARM support.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4168141",
      "database": "PostgreSQL",
      "date": "2026-07-17",
      "employment_period": "microsoft-2026",
      "title": "DocumentDB on YugabyteDB",
      "url": "https://dev.to/franckpachot/documentdb-on-yugabytedb-4na0",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The DocumentDB extension, providing MongoDB compatibility for PostgreSQL, is available in preview in YugabyteDB 2026.1, with some limitations, such as the absence of secondary indexes and lack of support for ARM processors.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4168141",
      "database": "YugabyteDB",
      "date": "2026-07-17",
      "employment_period": "microsoft-2026",
      "title": "DocumentDB on YugabyteDB",
      "url": "https://dev.to/franckpachot/documentdb-on-yugabytedb-4na0",
      "source": "dev.to",
      "evaluation": -1,
      "positive_weight": 0,
      "critical_weight": 1,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "The DocumentDB extension, providing MongoDB compatibility for PostgreSQL, is available in preview in YugabyteDB 2026.1, with some limitations, such as the absence of secondary indexes and lack of support for ARM processors.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4190390",
      "database": "Azure HorizonDB",
      "date": "2026-07-21",
      "employment_period": "microsoft-2026",
      "title": "Cypher graph queries on PostgreSQL with Apache AGE",
      "url": "https://dev.to/franckpachot/cypher-graph-queries-on-postgresql-with-apache-age-3l62",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "## Apache AGE on PostgreSQL I've built a small example based on the legendary EMP-DEPT schema from 45 years ago, running on Azure, because, according to it is the only managed service that supports it: !Image description I'm using HorizonDB, the PostgreSQL-compatible managed service for enterprise workloads, which is currently in preview (but you can also use the free `ghcr.io/pglayers/pglayers-azure:17` image from p",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4190390",
      "database": "Oracle Database",
      "date": "2026-07-21",
      "employment_period": "microsoft-2026",
      "title": "Cypher graph queries on PostgreSQL with Apache AGE",
      "url": "https://dev.to/franckpachot/cypher-graph-queries-on-postgresql-with-apache-age-3l62",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "The Apache AGE extension lets PostgreSQL run Cypher queries over an EMP/DEPT hierarchy, tracing graph traversal back through Oracle's 1980s CONNECT BY syntax and SQL's recursive WITH clause.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4190390",
      "database": "PostgreSQL",
      "date": "2026-07-21",
      "employment_period": "microsoft-2026",
      "title": "Cypher graph queries on PostgreSQL with Apache AGE",
      "url": "https://dev.to/franckpachot/cypher-graph-queries-on-postgresql-with-apache-age-3l62",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 5,
      "positive_signals": [
        "benefit"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Cypher queries are translated into SQL execution plans, allowing graph traversals to benefit from the PostgreSQL optimizer and indexing infrastructure.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4198280",
      "database": "PostgreSQL",
      "date": "2026-07-22",
      "employment_period": "microsoft-2026",
      "title": "From Joins to Graph Edges: SQL/PGQ in PostgreSQL 19",
      "url": "https://dev.to/franckpachot/from-joins-to-graph-edges-sqlpgq-in-postgresql-19-2doo",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 7,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "From Joins to Graph Edges: SQL/PGQ in PostgreSQL 19.",
      "relation_aware": false
    },
    {
      "publication_id": "linkedin:b4xoe",
      "database": "PostgreSQL",
      "date": "2026-07-22",
      "employment_period": "microsoft-2026",
      "title": "The Myth of Strong Relationships in Relational Databases",
      "url": "https://www.linkedin.com/pulse/myth-strong-relationships-relational-databases-franck-pachot-b4xoe",
      "source": "linkedin",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "new feature",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL/PGQ, introduced in PostgreSQL 19, provides a way to declare relationships above traditional relational tables and use them directly in queries.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4212666",
      "database": "Oracle Database",
      "date": "2026-07-23",
      "employment_period": "microsoft-2026",
      "title": "B+tree height after full delete: PostgreSQL fast root",
      "url": "https://dev.to/franckpachot/btree-height-after-delete-oracle-rebuild-vs-postgresql-fastroot-1ia4",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 1,
      "mixed": true,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [
        "lack"
      ],
      "evidence_excerpt": "The difference is that PostgreSQL can often recover most of the lookup efficiency automatically through regular vacuuming by maintaining a fast root, whereas Oracle requires an explicit rebuild to reclaim those levels.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4212666",
      "database": "PostgreSQL",
      "date": "2026-07-23",
      "employment_period": "microsoft-2026",
      "title": "B+tree height after full delete: PostgreSQL fast root",
      "url": "https://dev.to/franckpachot/btree-height-after-delete-oracle-rebuild-vs-postgresql-fastroot-1ia4",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 6,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 12,
      "positive_signals": [
        "fast"
      ],
      "critical_signals": [],
      "evidence_excerpt": "B+tree height after full delete: PostgreSQL fast root.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4212032",
      "database": "PostgreSQL",
      "date": "2026-07-24",
      "employment_period": "microsoft-2026",
      "title": "B-tree block split: what's the impact?",
      "url": "https://dev.to/franckpachot/b-tree-block-split-whats-the-impact-1i9c",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [
        "useful"
      ],
      "critical_signals": [],
      "evidence_excerpt": "One command and two extensions included in PostgreSQL contrib are particularly useful: - **EXPLAIN (analyze, buffers, wal)** for observing the buffer activity and WAL generated by DML on indexes - **pageinspect** for inspecting internal page structures - **pgstattuple** for gathering statistics about index pages By inserting rows one at a time and collecting B-tree statistics after each insert, we can watch the index",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4235447",
      "database": "Microsoft SQL Server",
      "date": "2026-07-26",
      "employment_period": "microsoft-2026",
      "title": "Following ROWIDs Through an Oracle Unique Index Update",
      "url": "https://dev.to/franckpachot/following-rowids-through-an-oracle-unique-index-update-2lc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "SQL Server appears to blend these approaches: it avoids raising transient violations and indicates the offending value when a violation happens, at the cost of reordering the rows being updated.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4235447",
      "database": "Oracle Database",
      "date": "2026-07-26",
      "employment_period": "microsoft-2026",
      "title": "Following ROWIDs Through an Oracle Unique Index Update",
      "url": "https://dev.to/franckpachot/following-rowids-through-an-oracle-unique-index-update-2lc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Following ROWIDs Through an Oracle Unique Index Update.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4235447",
      "database": "PostgreSQL",
      "date": "2026-07-26",
      "employment_period": "microsoft-2026",
      "title": "Following ROWIDs Through an Oracle Unique Index Update",
      "url": "https://dev.to/franckpachot/following-rowids-through-an-oracle-unique-index-update-2lc",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle lets UPDATE swap two unique column values (-1 and 1) without violating the constraint mid-statement, while PostgreSQL rejects it unless the constraint is declared DEFERRABLE.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4169511",
      "database": "MongoDB",
      "date": "2026-07-27",
      "employment_period": "microsoft-2026",
      "title": "WHERE $1::timestamptz IS NULL OR \"timestamp\" > $1",
      "url": "https://dev.to/franckpachot/where-1timestamptz-is-null-or-timestamp-1-55kf",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "A single PostgreSQL prepared statement with WHERE $1 IS NULL OR ts > $1 serves both the first unfiltered page and cursor-paginated pages, replacing MongoDB's two separate query branches.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4169511",
      "database": "PostgreSQL",
      "date": "2026-07-27",
      "employment_period": "microsoft-2026",
      "title": "WHERE $1::timestamptz IS NULL OR \"timestamp\" > $1",
      "url": "https://dev.to/franckpachot/where-1timestamptz-is-null-or-timestamp-1-55kf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "works well"
      ],
      "critical_signals": [],
      "evidence_excerpt": "While the default setting `plan_cache_mode = 'auto'` often works well, it relies on a heuristic: PostgreSQL executes the statement a few times with custom plans, then compares the estimated cost of a generic plan with the average estimated cost of the custom plans.",
      "relation_aware": false
    },
    {
      "publication_id": "microsoft-techcommunity:4540160",
      "database": "Azure HorizonDB",
      "date": "2026-07-28",
      "employment_period": "microsoft-2026",
      "title": "AI-Powered Retrieval in PostgreSQL with Azure HorizonDB",
      "url": "https://techcommunity.microsoft.com/blog/adforpostgresql/ai-powered-retrieval-in-postgresql-with-azure-horizondb/4540160",
      "source": "microsoft-techcommunity",
      "evaluation": 1,
      "positive_weight": 2,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 4,
      "positive_signals": [
        "efficient",
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "AI-Powered Retrieval in PostgreSQL with Azure HorizonDB | Microsoft Tech Community archive Archived from Microsoft Tech Community AI-Powered Retrieval in PostgreSQL with Azure HorizonDB FranckPachot · 2026-07-28 Developers need flexible, efficient item searches by description.",
      "relation_aware": false
    },
    {
      "publication_id": "microsoft-techcommunity:4540160",
      "database": "PostgreSQL",
      "date": "2026-07-28",
      "employment_period": "microsoft-2026",
      "title": "AI-Powered Retrieval in PostgreSQL with Azure HorizonDB",
      "url": "https://techcommunity.microsoft.com/blog/adforpostgresql/ai-powered-retrieval-in-postgresql-with-azure-horizondb/4540160",
      "source": "microsoft-techcommunity",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 6,
      "positive_signals": [
        "efficient"
      ],
      "critical_signals": [],
      "evidence_excerpt": "AI-Powered Retrieval in PostgreSQL with Azure HorizonDB.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4265167",
      "database": "Azure HorizonDB",
      "date": "2026-08-02",
      "employment_period": "microsoft-2026",
      "title": "HorizonDB reduces WAL overhead with smarter FPI (full-page image) than traditional PostgreSQL",
      "url": "https://dev.to/franckpachot/horizondb-reduces-wal-overhead-with-smarter-fpi-full-page-image-than-traditional-postgresql-1lhf",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 10,
      "positive_signals": [
        "reduced cost, risk, or downtime"
      ],
      "critical_signals": [],
      "evidence_excerpt": "HorizonDB reduces WAL overhead with smarter FPI (full-page image) than traditional PostgreSQL.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4265167",
      "database": "PostgreSQL",
      "date": "2026-08-02",
      "employment_period": "microsoft-2026",
      "title": "HorizonDB reduces WAL overhead with smarter FPI (full-page image) than traditional PostgreSQL",
      "url": "https://dev.to/franckpachot/horizondb-reduces-wal-overhead-with-smarter-fpi-full-page-image-than-traditional-postgresql-1lhf",
      "source": "dev.to",
      "evaluation": 2,
      "positive_weight": 7,
      "critical_weight": 0,
      "mixed": false,
      "intent": "benchmark",
      "scope": "specific feature or behavior",
      "evidence_backed": false,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 19,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "I performed the same `pgbench` initialization steps and transactional workload on: * Azure Database for PostgreSQL Flexible Server, which runs the communtity PostgreSQL and extensions * Azure HorizonDB (Preview), which is PostgreSQL with disaggregated storage This is not a performance or cost comparison.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4339593",
      "database": "PostgreSQL",
      "date": "2026-08-07",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL 19 REPACK: Choosing the Right FILLFACTOR",
      "url": "https://dev.to/franckpachot/postgresql-19-repack-choosing-the-right-fillfactor-3848",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 2,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "PostgreSQL 19 REPACK: Choosing the Right FILLFACTOR.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4349982",
      "database": "Oracle Database",
      "date": "2026-08-09",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL Multi-Version: From Time Travel to Concurrency Control",
      "url": "https://dev.to/franckpachot/postgresql-multi-version-from-time-travel-to-concurrency-control-b5",
      "source": "dev.to",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": false,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 3,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Source history and direct heap experiments distinguish Berkeley POSTGRES multiversion storage for Time Travel from PostgreSQL's MVCC added in 1998, tracing how tuple versions later shaped snapshots, VACUUM, HOT, WAL, and contrasts with Oracle undo.",
      "relation_aware": false
    },
    {
      "publication_id": "dev.to:4349982",
      "database": "PostgreSQL",
      "date": "2026-08-09",
      "employment_period": "microsoft-2026",
      "title": "PostgreSQL Multi-Version: From Time Travel to Concurrency Control",
      "url": "https://dev.to/franckpachot/postgresql-multi-version-from-time-travel-to-concurrency-control-b5",
      "source": "dev.to",
      "evaluation": 1,
      "positive_weight": 3,
      "critical_weight": 1,
      "mixed": true,
      "intent": "technical explanation",
      "scope": "architectural trade-off",
      "evidence_backed": true,
      "confidence": "high",
      "summary_source": "curated",
      "explicit_mentions": 16,
      "positive_signals": [
        "advantage",
        "named source of advantages",
        "useful"
      ],
      "critical_signals": [
        "expensive"
      ],
      "evidence_excerpt": "PostgreSQL 6.5 describes its new MVCC as taking advantage of PostgreSQL's \"natural multiversion nature.\" That wording is unusually revealing: MVCC was new as concurrency control, while multiversion storage was already natural to the system.",
      "relation_aware": true
    },
    {
      "publication_id": "microsoft-techcommunity:4544728",
      "database": "Azure HorizonDB",
      "date": "2026-08-13",
      "employment_period": "microsoft-2026",
      "title": "Oracle to PostgreSQL in VS Code: Assessment, Conversion, and Validation",
      "url": "https://techcommunity.microsoft.com/blog/adforpostgresql/oracle-to-postgresql-in-vs-code-assessment-conversion-and-validation/4544728",
      "source": "microsoft-techcommunity",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "technical exploration",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 1,
      "positive_signals": [
        "flexible"
      ],
      "critical_signals": [],
      "evidence_excerpt": "At the time of this test, the migration workflow expected an Azure PostgreSQL connection for compilation, either Flexible Server or HorizonDB.",
      "relation_aware": false
    },
    {
      "publication_id": "microsoft-techcommunity:4544728",
      "database": "Oracle Database",
      "date": "2026-08-13",
      "employment_period": "microsoft-2026",
      "title": "Oracle to PostgreSQL in VS Code: Assessment, Conversion, and Validation",
      "url": "https://techcommunity.microsoft.com/blog/adforpostgresql/oracle-to-postgresql-in-vs-code-assessment-conversion-and-validation/4544728",
      "source": "microsoft-techcommunity",
      "evaluation": 1,
      "positive_weight": 1,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 11,
      "positive_signals": [
        "good"
      ],
      "critical_signals": [],
      "evidence_excerpt": "Here is an example showing the level of detail the log provides: 16:50:16 [INFO] ossdbtoolsservice.conversion_v2.pipeline.chunk_converter.package_converter: Package ORDERENTRY: member processOrders -> converted in 80.0s (tokens=5232, notes=Oracle ROWNUM < 10 translated to LIMIT 9 (no ORDER BY in source, so row choice remains arbitrary).; Oracle (+) outer joi) This is a good example because it goes beyond syntax, wher",
      "relation_aware": false
    },
    {
      "publication_id": "microsoft-techcommunity:4544728",
      "database": "PostgreSQL",
      "date": "2026-08-13",
      "employment_period": "microsoft-2026",
      "title": "Oracle to PostgreSQL in VS Code: Assessment, Conversion, and Validation",
      "url": "https://techcommunity.microsoft.com/blog/adforpostgresql/oracle-to-postgresql-in-vs-code-assessment-conversion-and-validation/4544728",
      "source": "microsoft-techcommunity",
      "evaluation": 0,
      "positive_weight": 0,
      "critical_weight": 0,
      "mixed": false,
      "intent": "comparison",
      "scope": "specific feature or behavior",
      "evidence_backed": true,
      "confidence": "medium",
      "summary_source": "curated",
      "explicit_mentions": 9,
      "positive_signals": [],
      "critical_signals": [],
      "evidence_excerpt": "Oracle to PostgreSQL in VS Code: Assessment, Conversion, and Validation.",
      "relation_aware": false
    }
  ]
}
