{"id":15908057,"url":"https://github.com/ingef/conquery","last_synced_at":"2025-05-08T21:18:02.334Z","repository":{"id":37549588,"uuid":"96970120","full_name":"ingef/conquery","owner":"ingef","description":"Visual, interactive queries against big databases","archived":false,"fork":false,"pushed_at":"2025-05-07T17:10:07.000Z","size":51103,"stargazers_count":37,"open_issues_count":56,"forks_count":13,"subscribers_count":5,"default_branch":"develop","last_synced_at":"2025-05-08T21:17:50.859Z","etag":null,"topics":["big-data","big-data-analytics","java"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ingef.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-07-12T05:52:05.000Z","updated_at":"2025-05-07T10:57:28.000Z","dependencies_parsed_at":"2022-07-14T06:20:31.312Z","dependency_job_id":"3265b70e-e0de-499f-922f-b83cb858cbe5","html_url":"https://github.com/ingef/conquery","commit_stats":{"total_commits":9259,"total_committers":43,"mean_commits":"215.32558139534885","dds":0.7021276595744681,"last_synced_commit":"7b9bd0f50a4f65d9748a7f38ee2ad3084e294062"},"previous_names":["bakdata/conquery"],"tags_count":334,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingef%2Fconquery","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingef%2Fconquery/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingef%2Fconquery/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingef%2Fconquery/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ingef","download_url":"https://codeload.github.com/ingef/conquery/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253149622,"owners_count":21861740,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["big-data","big-data-analytics","java"],"created_at":"2024-10-06T14:09:11.431Z","updated_at":"2025-05-08T21:18:02.327Z","avatar_url":"https://github.com/ingef.png","language":"Java","funding_links":[],"categories":["大数据"],"sub_categories":[],"readme":"# Conquery\n*fast \u0026 efficient analysis*\n\n[![Last Release](https://img.shields.io/github/release-date/ingef/conquery.svg?logo=github)](https://github.com/ingef/conquery/releases/latest)\n![Code Size](https://img.shields.io/github/languages/code-size/ingef/conquery.svg)\n[![License](https://img.shields.io/github/license/ingef/conquery.svg)](https://github.com/ingef/conquery/blob/develop/LICENSE)\n\n![conquery Screenshot](images/screenshot-v4.png)\n\nConquery is a powerful web-based tool to compose and execute queries against large event-like data sets.\n\nEvent data sets typically associate events with a certain subject (i.e. a person or a physical object). One common use case for the data is to identify groups of similar subjects based on the assumption that they share similar events in a given time frame.\n\nConquery supplies a powerful interface to group event types in a hierarchical *concept tree* structure. Elements of this tree represent a group of similar subjects. Those subjects can be composed into a powerful query that runs against the data set.\n\n## Requirements\n- Maven 3 (optional for building)\n- Java JDK 11\n- Node.js 18\n- curl (to import the test data)\n\n\n## Starting the demo\n\n### Frontend only\n\nThis repository includes the Conquery frontend along with a non-functional backend. It provides a set of example concept trees to demonstrate the capabilities of the UI: The example's use case is to search for groups of actors who appeared in movies of the same genre or received the same award.\n\nCheck the README in `/frontend` for details.\n\n### Frontend + Backend\n\n#### Steps\n\nTo test frontend and backend together you can start the setup that is used for end-to-end tests.\n\nFirst build the backend using `conquery/scripts/build_backend_version.sh` or download a JAR from\nthe [release page](https://github.com/ingef/conquery/releases) and place it in `conquery/executable/target/`.\n\nBuild the frontend by running:\n\n```bash\ncd frontend\ncp .env.example .env\nnpm install\nnpm run build\n```\n\nYou can then run `conquery/scripts/run_e2e_all.sh` to start frontend and backend, and also load the test data required\nby cypress end-to-end test or you can run `conquery/scripts/run_e2e_backend.sh`\nand `conquery/scripts/run_e2e_frontend.sh` separately without loading any data.\n\nAfter that, you can visit http://localhost:8081/admin-ui and explore the Admin Panel.\n\nThe frontend is accessible at http://localhost:8000 as the default \"superuser\" implicitly. Since the backend uses a\ndevelopment authentication, you can switch users by passing another users \"UserId\" as the access token in the query\nstring when accessing the frontend, e.g.: http://localhost:8000/?access_token=user.user2.\n\n## Configuration\n\nThe configuration options for the backend are based on Java classes which reside\nunder [this package](https://github.com/ingef/conquery/tree/develop/backend/src/main/java/com/bakdata/conquery/models/config)\n.\nUsually you provide configuration with in a JSON file that is referenced by the start command:\n\n```bash\njava -jar conquery.jar standalone config.json\n```\n\nThis `config.json` represents\nconfiguration [root class](https://github.com/ingef/conquery/blob/develop/backend/src/main/java/com/bakdata/conquery/models/config/ConqueryConfig.java)\n.\n\nWe continuously improve and extend the documentation on these classes and will provide dedicated articles on specific\nconfigurations, such as:\n\n- [Configure Authentication with OAuth2/OpenId Connect](./docs/authentication.md)\n\n## Development\n\n### Testing\n\n#### Integration Tests\nTo develop tests that run against external services like an SQL-Server, a Form-Backend or Keycloak we use these techniques:\n- [testcontainers](https://testcontainers.com/):  \n  Enables the configuration and orchestration of real service instances during test initialization.\n  This approach integrates seamlessly with continuous integration (CI) pipelines. For local development or environments without access to a container engine, a test should implement configurable flags which allow the use of a externally managed service instances.\n- [mockserver](https://www.mock-server.com/):  \n  Supports the programmatic or declarative definition of request/response mappings, including OpenAPI specification-based configurations, to simulate external service behavior.\n\n#### End-to-End Tests\n\nApart from separate frontend and backend tests, the project also contains end-to-end tests powered by [cypress](https://www.cypress.io/).\n\nTo run the end-to-end test locally:\n\n1. Make sure you installed all [requirements](#requirements)\n2. From the repo root folder run  `conquery/scripts/run_e2e_all.sh`\n3. Wait until the output: `Node server listening on port: 8000` appears\n4. To install cypress and it's dependencies, run `npm install` from an other terminal in the `conquery/` folder\n5. Then run `npx cypress open` to start cypress\n6. Then chose a test suite and start it.\n\nFor further informations on this and other tests, please refer to the\ncorresponding [CI configuration](https://github.com/ingef/conquery/tree/develop/.github/workflows).\n\n### Data Integration\n\nTo make you own data (in form of CSVs) availiable to conquery some steps are necessary:\n\n1. Describe your data table structure with meta data, by generating Import- and Table-JSONs.\n2. Describe your data content as Concept-JSON to provide query functionallity.\n3. Preprocess your data from CSV to CQPP.\n4. Upload everything.\n\nTo get a better impression of the single steps, take a look at the [Tutorials](./tutorial/mimic_iii_demo/README.md)\n\n### Custom Forms\n\nIt is possible to extend the analytic capabilities by adding custom forms.\nCustom forms provide an easy way for a user to perform standardized analyses.\nFor more informations, take a look at the [guide](./docs/custom_forms.md)\n\n## Acknowledgements\n\nThis platform was created by [InGef – Institut für angewandte Gesundheitsforschung Berlin GmbH](http://www.ingef.de/) in\ncooperation with [bakdata GmbH](http://www.bakdata.com) and [Kai Rollmann](https://kairollmann.de/).\n\n[\u003cimg alt=\"InGef – Institut für angewandte Gesundheitsforschung Berlin GmbH\" src=\"images/ingef_logo.svg\" height=50 align=\"top\"\u003e](http://www.ingef.de/)\n\u0026emsp;\n[\u003cimg alt=\"bakdata GmbH\" src=\"images/bakdata_logo.svg\" height=37 align=\"top\"\u003e](http://www.bakdata.com)\n\u0026emsp;\n[\u003cimg alt=\"Rollmann Software\" src=\"images/rollmann_software_logo.png\" height=41 align=\"top\"\u003e](https://kairollmann.de)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fingef%2Fconquery","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fingef%2Fconquery","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fingef%2Fconquery/lists"}