Data Explorer
The Stack Exchange Data Explorer is a tool for executing arbitrary SQL queries against data from the various question and answer sites in the Stack Exchange network.
Quick Guide
Prerequisites
- Visual Studio 2015 or later
- .NET Framework 4.7
- SQL Server 2012 Express or later/higher
- IIS7 or later
- The URL Rewrite 2.0 extension is required for OData endpoint support. If you don't need this, you can comment out the
<rewrite>
section inweb.config
.
- The URL Rewrite 2.0 extension is required for OData endpoint support. If you don't need this, you can comment out the
Layout
- The
App
directory contains the Data Explorer solution - The
Migrations
directory contains the database evolution scripts and a batch file for running them - The
Tools
directory contains some precompiled utilities for working with Data Explorer - The
Lib
directory contains some 3rd party binaries used in the application - The
SeedData
directory contains seed files to populate the Data Explorer schema with some sample data
Configuration
The database can be brought up to date by running the migrate.local.bat
file in the Migrations
directory. This assumes an existing SQL Server database named DataExplorer with integrated security enabled. If your environment is configured differently, you will need to modify the connection string in your batch file and web.config
file to reflect your setup.
Once done, you'll need to populate the Sites
table with a record for each site you intend to query against. You can run the sites.sql
file in the SeedData
directory to prepopulate the table with a small list of popular Stack Exchange sites. To actually run queries, you will need to create additional databases that reflect the connection values in the Sites
table; these can optionally be populated with data from the Stack Exchange data dumps using a custom import process or one of the data dump import tools available on Stack Apps.
Contributing
Development
- Install git, or a git client of your choosing (such as TortoiseGit, SourceTree, or GitHub Desktop)
- Fork this repository on GitHub
- Commit changes to your fork, preferably in easy-to-merge branches
- Submit a pull request on GitHub with a description of your changes
Providing Feedback
- Submit bugs, feature requests, and support questions on Meta Stack Exchange or create a new GitHub issue.
Miscellaneous
Third Party Components
- ASP.NET MVC 5
- MiniProfiler
- Dapper
- jQuery
- CodeMirror
- SlickGrid (currently using a fork for updates)
- Flot
- StackExchange.Exceptional
- Json.NET
- DotNetOpenAuth
- reCAPTCHA
For more information, see "Which tools and technologies are used to build Data Explorer?"