ACLED Event Data

Application Areas
International Relations
Datatypes
Numeric
Datetime
Text
Location

← Back to Datasets

Midterm Vignette

The homepage for the ACLED data project can be found here, but to use this dataset for a DSAN 6000 project, you should use the full, extracted data available in the S3 bucket at the following URI:

s3://dsan6000-data/acled_events.parquet

For this pathway, imagine you have been hired by ACLED and asked to apply your DSAN 6000 skills to a research project aimed towards improving their event-processing pipeline. Their needs are:

  1. Decreased “latency time”, in the sense that more events can be detected and their severity (in terms of civilian impacts) can be estimated in real time, while allowing these severity-levels to update as more news reports stream in
  2. A dashboard of these detected events (and their estimated severity), publicly available for organizations like Médecins Sans Frontières to use in their allocation of medical workers across different regions
  3. An “official” ACLED report drawing on the detected events and derived statistics, that will in turn likely be cited in UN Human Rights Council discussions and reports

As part of this task, you have been given access to ACLED’s OLTP database (described below), and you have been told to “take it from there”: your job, on Questions 1-6 on the Midterm, is to plan out what each step in an OLTP \(\leadsto\) OLAP \(\leadsto\) analytic insights pipeline for this task might look like.

Question 1 Starter: OLTP Structure

For the purposes of the midterm, you should think of the data you worked with in HW4 and HW5 as the form of this data already extracted to OLAP. Meaning, for the midterm you are going a few steps back to the OLTP records that are originally received by ACLED. An example of the OLTP records that might show up in a given period of time is as follows, where you can imagine this as a sample of the most-recently-added rows in an events table (think of the streaming-events OLTP demo from the Week 1 slides!)

Code
import pandas as pd
from great_tables import GT

acled_oltp_df = pd.read_csv("acled_oltp.csv")
(
  GT(acled_oltp_df)
  .fmt_url(columns='report_url')
  .fmt_datetime(columns='received')
  .cols_width(cases={
    # 'received': '50px',
    'report_title': '50%',
    # 'report_url': '50px',
  })
)
received report_title report_source report_url
2026-03-29 20:03:48 New U.S. Missile Hit Iranian Sports Hall and School, Analysis Shows New York Times https://www.nytimes.com/2026/03/29/world/middleeast/us-precision-strike-missile-iran-lamerd.html
2026-03-23 09:00:00 U.S. Responsible for Killing Over 100 Children in Iran School Attack Amnesty International https://www.amnestyusa.org/blog/u-s-responsible-for-killing-over-100-children-in-iran-school-attack/
2026-03-06 14:19:39 Analysis suggests US was responsible for deadly strike on Iranian elementary school CNN https://edition.cnn.com/2026/03/06/middleeast/iran-minab-elementary-school-investigation-us-strike-intl
2026-03-03 22:39:04 DNV har fått bekreftet dødsfallet til kollega Hamid Amini Det Norske Veritas https://www.dnv.no/news/2026/bekreftet-dodsfallet-til-kollega-hamid-amini/
2026-03-03 01:20:35 What we know about the strike on a school in Iran as the death toll rises NBC News https://www.nbcnews.com/world/iran/know-strike-school-iran-death-toll-rises-rcna261266
2026-03-01 12:33:45 At least 153 dead after reported strike on school, Iran says BBC https://www.bbc.com/news/articles/c1l7rvqq51eo
2026-02-28 19:26:31 شهادت بیش از ۱۵ شهروند در حمله رژیم صهیونیستی و آمریکا به لامرد فارس IRNA https://www.irna.ir/news/86089703/%D8%B4%D9%87%D8%A7%D8%AF%D8%AA-%D8%A8%DB%8C%D8%B4-%D8%A7%D8%B2-%DB%B1%DB%B5-%D8%B4%D9%87%D8%B1%D9%88%D9%86%D8%AF-%D8%AF%D8%B1-%D8%AD%D9%85%D9%84%D9%87-%D8%B1%DA%98%DB%8C%D9%85-%D8%B5%D9%87%DB%8C%D9%88%D9%86%DB%8C%D8%B3%D8%AA%DB%8C-%D9%88-%D8%A2%D9%85%D8%B1%DB%8C%DA%A9%D8%A7-%D8%A8%D9%87-%D9%84%D8%A7%D9%85%D8%B1%D8%AF

Note the complexities that may be involved in turning this OLTP-format stream of events into an analytics-friendly OLAP infrastructure meeting ACLED’s needs (as listed above). For example:

  • Despite the range in received timestamps (between February 28 and March 29), these reports actually describe two separate incidents from US bombings in Iran earlier this year, which occurred on the same day (February 28)
  • These were not the only civilian-casualty incidents on that day, in Iran or elsewhere. The airwars.org database, for example, lists 22 incidents, covering (in addition to Iran): Somalia, the United Arab Emirates, Kuwait, Syria, the Occupied Palestinian Territories, and Qatar, in addition to the multiple incidents in Iran.
  • This range of locations, in turn, means that the pipeline needs to be able to handle reports in several languages (and across many non-standardized platforms like local news sites, X.com, and Telegram): Events in Somalia may be reported in Somali, for example, which can be written in three different scripts, while events in the far northeast of Syria may be reported in Kurmanji, the language widely used by autonomous Kurdish militia groups operating in this “corner” of the country.