Query the Data Delivery Network
Query the DDNThe easiest way to query any data on Splitgraph is via the "Data Delivery Network" (DDN). The DDN is a single endpoint that speaks the PostgreSQL wire protocol. Any Splitgraph user can connect to it at data.splitgraph.com:5432
and query any version of over 40,000 datasets that are hosted or proxied by Splitgraph.
For example, you can query the 47_indicadores_de_salud_2018_2021
table in this repository, by referencing it like:
"datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i:latest"."47_indicadores_de_salud_2018_2021"
or in a full query, like:
SELECT
":id", -- Socrata column ID
"tasa_fecundidad_adolescentes", -- Tasa de fecundidad de madres adolecentes
"cobertura_bcg_nica_dosis", -- Cobertura Vacunacion BCG (unica dosis)
"cobertura_3_dosis_pentavalente", -- Cobertura 3 dosis por pentavalente en menores de 1 año
"cobertura_3_dosis_polio_1", -- Cobertura triple dosis de vacuna contra el polio en menores de 1 año
"ni_os_1_a_o_con_3_dosis_polio", -- Niños menores de 1 año con 3 dosis de vacuna contra el polio
"cobertura_3_dosis_dpt_1_a", -- Cobertura triple dosis de dpt en menores de 1 año
"tasa_mortalidad_c_ncer_mama", -- Tasa de mortalidad cáncer mama
"tasa_mortalidad_diabetes", -- Tasa de mortalidad diabetes
"casos_diabetes_mellitus", -- casos por diabetes melitus
"casos_rabia_humana", -- casos por rabia humana
"tasa_incidencia_sifilis", -- Tasa de incidencia sifilis gestacional
"casos_sifilis_cong_nita", -- casos por sifilis congenita
"letalidad_dengue", -- Letalidad por dengue
"muerte_dengue", -- Muerte por dengue
"incidencia_dengue", -- Incidencia de dengue
"incidencia_dengue_grave", -- incidencia por dengue grave
"curaci_n_lepra", -- Porcentaje de curacion de Lepra
"incidencia_lepra", -- Incidencia de lepra
"proporci_n_tuberculosis", -- Proporción por tuberculosis multidrogorresistente
"usuario_tuberculosis", -- Usuario por tuberculosis multidrogorresistente
"tasa_hospitalizaci_n", -- Tasa por hospitalización tuberculosis
"tasa_de_mortalidad_por_1", -- Tasa por de mortalidad por tuberculosis
"tasa_incidencia_tuberculosis", -- Tasa por incidencia tuberculosis
"tm_vih_sida", -- TM por vih sida
"muertes_vih_sida", -- Muertes por vih sida
"incidencia_vih_sida", -- Incidencia por vih sida
"prevalencia_vih_sida", -- Prevalencia por vih sida
"casos_prevalentes_vih", -- casos por prevalentes en el vih
"tasa_de_mortalidad_tumor_1", -- Tasa de mortalidad por tumor en el prostata
"muerte_tumor_de_pr_stata", -- Muerte por tumor de próstata
"tasa_de_mortalidad_por_tumor", -- Tasa de Mortalidad por Tumor de cuello de Útero
"muerte_tumor_de_cuello_de", -- Muerte por tumor de Cuello de utero
"tasa_de_mortalidad_por_infecci", -- Tasa de mortalidad por infeccion respiratoria aguda en menores de 5 años
"muerte_infecci_n_respiratoria", -- Muerte por infeccion respiratoria aguda en menores de 5 años
"tasa_de_mortalidad_infantil", -- Tasa de mortalidad infantil en menores de 1 años
"muerte_1a_os", -- Muerte en menores de 1 año
"tm_ni_ez_5a_os", -- Muertes en menores de 5 años
"muerte_5a_os", -- Muertes en menores de 5 años
"tm_causa_externa", -- Tasa de mortalidad por causa externa
"muerte_causa_externa", -- Muertes por causa externa
"tasa_de_mortalidad_por", -- Tasa de Mortalidad por Enfermedades Cerebro Vasculares
"tasa_mortalidad_por_neoplasias", -- Tasa Mortalidad por Neoplasias
"tm_trasmisibles", -- Tasa demortalidad por enfermedades transmisibles
"muerte_enfermedad", -- Muertes maternas por enferemedades transmisibles
"tasa_mortalidad_c_ncer_inf", -- Tasa de mortalidad por cáncer infántil en menores de 14 años
"violencia_intrafamiliar", -- Violencia intrafamiliar
"casos_violencia_5_a_os", -- Casos de violencia en menores de 5 años
"tasa_de_mortalidad_en_5_a", -- Tasa de mortalidad en menores de 5 años por EDA (Enfermedad diarreica aguda)
"tm_general", -- Tasa de mortalidad general
"muertes", -- numero de fallecimiento maternos
"nacidos_vivos_de_mujeres_1", -- Porcentaje de mujeres embarazadas con rango etario entre 10 y 14 años
"nacidos_vivos_de_mujeres", -- Numero de mujeres embarazadas con rango etario entre 10 y 14 años
"nacidos_vivos_peso_2500_gr_3", -- Porcentaje de Nacidos vivos con mayor 2500 gramos con 37 semanas de gestación
"nacidos_vivos_peso_2500_gr_2", -- Nacidos vivos con peso mayor o igual a 2500 gramos con 37 semanas de gestación
"mujeres_embarazadas_15_a_1", -- Porcentaje de mujeres embarazadas con rango etario entre 15 y 19 años
"mujeres_embarazadas_10_a", -- Numero de mujeres embarazadas con rango etario entre 10 y 19 años
"proporci_n_mujeres_sifilis", -- Proporcion de mujeres diagnosticadas con sifilis y tratadas con menos de 17 semanas de embarazo
"mujeres_gestantes_sifilis", -- Numero de Mujeres gestantes diagnosticadas con sifilis
"mujeres_madres_o_embarazadas", -- Porcentaje de mujeres en estado de embarazo o que son madres
"tasa_fecundidad_gral", -- Tasa de fecundidad general
"nacimientos", -- Numero de nacimientos reportados en el año
"tasa_natalidad", -- Tasa de natalidad (anual)
"muerte_enfermedades_cerebro", -- Muerte por enfermedades Cebrebro Vasculares
"cod", -- Codigo del departamento y del municipio
"mujer_10_a_49_a_os", -- Numero de mujeres embarazadas con rango etario entre 10 y 49 años
"cod_mun", -- Codigo del municipio
"_15_a_os_con_leucemias", -- Menores de 15 años con leucemia
"ni_os_1_a_o_vacunados_2_dosis", -- Niños menores de 1 año vacunados con 2da dosis contra Neumococo
"ncv_4_cpn", -- Nacidos Vivos con control prenatal
"casos_sifilis_gestacional", -- casos por sifilis gestacional
"muertes_por_neoplasias", -- Muertes maternas por neoplasias
"muerte_tumor_de_estomago", -- Muerte por tumor de estomago
"tasa_violencia_sexual_5_a", -- Tasa violencia sexual en menores de 5 años
"muertes_maternas", -- Muertes maternas
"tasa_incidencia_violencia", -- Tasa de incidencia por violencia intrafamiliar
"prevalencia_vih_sida_15_a", -- Prevalencia por vih sida a años
"ncv_4_cpn_1", -- Porcentaje de Nacidos vivos con control prenatal
"municipio", -- Nombre del municipio
"c_ncer_mama", -- Cáncer de mama
"mujeres_embarazadas_15_a", -- Numero de mujeres embarazadas con rango etario entre 15 y 19 años
"mujer_15_a_49_a_os", -- Numero de mujeres embarazadas con rango etario entre 15 y 49 años
"nacidos_vivos_peso_2500_gr_1", -- Porcentaje de nacidos vivos con peso inferior a 2500 gramos
"casos_nuevos_tuberculosis", -- casos por nuevos en el tuberculosis
"casos_violencia_60_a_os", -- Casos de violencia en menores de 60 años
"casos_violencia_sexual_5", -- Casos violencia sexual en menores de 5 años
"casos_violencia_de_genero", -- Casos presentados por violencia de genero
"tasa_incidencia_violencia_1", -- Tasa de incidencia de violencia de genero
"tasa_incidencia_violencia_2", -- Tasa de incidencia por violencia en menores de 60 años
"tasa_incidencia_violencia_3", -- Tasa de incidencia por violencia en menores de 5 años
"nacidos_con_bajo_peso_o_37", -- Porcentaje de Nacidos vivos con bajo peso (gestación menor o igual a 37 semanas)
"tasa_mortalida_perinatal", -- Tasa de mortalida perinatal
"tasa_fecund_10_14_a_os", -- Tasa de fecundidad en menores de 10 a 14 años
"tasa_fecund_15_19_a_os", -- Tasa de fecundidad en jovenes de 15 a 19 años
"deptos", -- Departamento
"a_o", -- Año
"parto_inst", -- Porcentaje de partos institucionales
"raz_n_mortalidad_materna", -- Razon de la mortalidad materna
"mujeres_embarazadas_10_a_1", -- Porcentaje de mujeres embarazadas con rango etario entre 10 y 19 años
"cobertura_triple_viral", -- cobertura por triple viral
"nacidos_vivos_peso_2500_gr", -- Nacidos vivos con peso inferior a 2500 gramos
"tasa_de_mortalidad_tumor", -- Tasa de mortalidad por tumor en el estomago
"casos_nuevos_vih_sida", -- Casos por nuevos vih sida
"curaci_n_tb_pulmonar", -- Porcentaje de curacion de tuberculosis pulmonar
"tasa_iincidencia_sifilis", -- Tasa de incidencia por sifilis congenita
"ni_os_1_a_o_con_3_dosis_dpt", -- Niños menores de un año con vacuna de DPT(Difteria, Tetanos y Tosferina)
"ni_os_1_a_o_con_3_dosis", -- Niños menores de año con 3 dosis pentavalente
"ni_os_vacunados_con_bcg", -- Niños vacunados con BCG (bacilo de Calmette-Guérin)
"ni_os_vacunados_triple_viral", -- Niños vacunados triple por viral menores de 1 año
"ni_os_1_a_o_vacunados_fiebre", -- Niños de 1 año vacunados contra fiebre amarilla
"cobertura_1_a_o_vacunados", -- Cobertura de vacunacion contra ROTAVIRUS a niños menores de 1 año
"tasa_incidencia_leucemias", -- Tasa por incidencia de leucemias pediatricas
"indice_cop_12_a_os", -- Indice de COP (dientes cariados, perdidos y obturados) en menores de 12 años
"cobertura_ni_as_9_a_os", -- Cobertura de vacunacion contra neumococo a niñas menores de 9 años
"ni_as_9_a_os_vacunadas_vph", -- Niñas menores de 1 año vacunadas contra VPH (Virus del Papiloma Humano)
"cobertura_1_a_o_vacunados_1", -- Cobertura de vacunacion contra neumococo a niños menores de 1 año
"ni_os_1_a_o_vacunados", -- Niños menores de un año vacunados contra ROTAVIRUS
"cobertura_ni_os_1_a_o" -- Cobertura niños menores de 1 año vacunados contra fiebre amarilla
FROM
"datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i:latest"."47_indicadores_de_salud_2018_2021"
LIMIT 100;
Connecting to the DDN is easy. All you need is an existing SQL client that can connect to Postgres. As long as you have a SQL client ready, you'll be able to query datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i
with SQL in under 60 seconds.
Query Your Local Engine
bash -c "$(curl -sL https://github.com/splitgraph/splitgraph/releases/latest/download/install.sh)"
Read the installation docs.
Splitgraph Cloud is built around Splitgraph Core (GitHub), which includes a local Splitgraph Engine packaged as a Docker image. Splitgraph Cloud is basically a scaled-up version of that local Engine. When you query the Data Delivery Network or the REST API, we mount the relevant datasets in an Engine on our servers and execute your query on it.
It's possible to run this engine locally. You'll need a Mac, Windows or Linux system to install sgr
, and a Docker installation to run the engine. You don't need to know how to actually use Docker; sgr
can manage the image, container and volume for you.
There are a few ways to ingest data into the local engine.
For external repositories, the Splitgraph Engine can "mount" upstream data sources by using sgr mount
. This feature is built around Postgres Foreign Data Wrappers (FDW). You can write custom "mount handlers" for any upstream data source. For an example, we blogged about making a custom mount handler for HackerNews stories.
For hosted datasets (like this repository), where the author has pushed Splitgraph Images to the repository, you can "clone" and/or "checkout" the data using sgr clone
and sgr checkout
.
Cloning Data
Because datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i:latest
is a Splitgraph Image, you can clone the data from Spltgraph Cloud to your local engine, where you can query it like any other Postgres database, using any of your existing tools.
First, install Splitgraph if you haven't already.
Clone the metadata with sgr clone
This will be quick, and does not download the actual data.
sgr clone datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i
Checkout the data
Once you've cloned the data, you need to "checkout" the tag that you want. For example, to checkout the latest
tag:
sgr checkout datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i:latest
This will download all the objects for the latest
tag of datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i
and load them into the Splitgraph Engine. Depending on your connection speed and the size of the data, you will need to wait for the checkout to complete. Once it's complete, you will be able to query the data like you would any other Postgres database.
Alternatively, use "layered checkout" to avoid downloading all the data
The data in datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i:latest
is 0 bytes. If this is too big to download all at once, or perhaps you only need to query a subset of it, you can use a layered checkout.:
sgr checkout --layered datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i:latest
This will not download all the data, but it will create a schema comprised of foreign tables, that you can query as you would any other data. Splitgraph will lazily download the required objects as you query the data. In some cases, this might be faster or more efficient than a regular checkout.
Read the layered querying documentation to learn about when and why you might want to use layered queries.
Query the data with your existing tools
Once you've loaded the data into your local Splitgraph Engine, you can query it with any of your existing tools. As far as they're concerned, datos-gov-co/47-indicadores-de-salud-2018-2021-fc78-ab9i
is just another Postgres schema.