diff --git a/spiceaidocs/docs/clients/DBeaver/index.md b/spiceaidocs/docs/clients/DBeaver/index.md index 5c9672b2..da257add 100644 --- a/spiceaidocs/docs/clients/DBeaver/index.md +++ b/spiceaidocs/docs/clients/DBeaver/index.md @@ -1,6 +1,6 @@ --- -title: "DBeaver" -sidebar_label: "DBeaver" +title: 'DBeaver' +sidebar_label: 'DBeaver' description: 'Configure DBeaver to query Spice via JDBC' sidebar_position: 2 pagination_prev: 'clients/index' @@ -13,57 +13,64 @@ pagination_next: null 3. Download the [Apache Arrow Flight SQL JDBC driver](https://search.maven.org/search?q=a:flight-sql-jdbc-driver) - choose the "jar" option. -4. Launch DBeaver +4. Launch DBeaver 5. In the DBeaver application menu bar, open the "Database" menu and choose: "Driver Manager": -![Driver manager menu option](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/691d1f83-c1d0-4ad8-ec8d-d8f37ccc9d00/public "Driver manager menu option") + ![Driver manager menu option](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/691d1f83-c1d0-4ad8-ec8d-d8f37ccc9d00/public 'Driver manager menu option') 6. Click the "New" button on the right: -![Driver manager new button](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/5783d944-daae-4735-99e9-976f974bc100/public "Driver manager new button") + ![Driver manager new button](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/5783d944-daae-4735-99e9-976f974bc100/public 'Driver manager new button') 7. Add the JDBC jar file: + 1. Click the "Libraries" tab 1. Click the: "Add File" button 1. Choose the "flight-sql-jdbc-driver-15.0.1.jar" jar file (the file downloaded in step 3 above) - and click "Open" - ![Select jar file](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/19900f7a-f00f-473d-780e-4a28c2ecd800/public "Select jar file") + ![Select jar file](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/19900f7a-f00f-473d-780e-4a28c2ecd800/public 'Select jar file') 1. Close the Driver editor window with the blue "OK" button on the lower-right 8. Enter the driver settings: + 1. Click the "Settings" tab - 1. In the "Driver Name" field - enter: ```Apache Arrow Flight SQL``` - 1. In the "URL Template" field - enter: ```jdbc:arrow-flight-sql://{host}:{port}?useEncryption=false&disableCertificateVerification=true``` - - If [API key authentication](../../api/auth/index.md) is enabled, the URL template should be: ```jdbc:arrow-flight-sql://{host}:{port}?useEncryption=false&disableCertificateVerification=true&user=&password=``` - where `` is the API key value + 1. In the "Driver Name" field - enter: `Apache Arrow Flight SQL` + 1. In the "URL Template" field - enter: `jdbc:arrow-flight-sql://{host}:{port}?useEncryption=false&disableCertificateVerification=true` + + - If [API key authentication](../../api/auth/index.md) is enabled, the URL template should be: `jdbc:arrow-flight-sql://{host}:{port}?useEncryption=false&disableCertificateVerification=true&user=&password=` - where `` is the API key value + 1. In the "Driver Type" drop-down box - choose: "SQLite" 1. Select "No authentication" - - This should be selected even if API key authentication is enabled in the runtime, as the API key is supplied via the URL template above. + + - This should be selected even if API key authentication is enabled in the runtime, as the API key is supplied via the URL template above. + 1. The driver manager "Edit Driver" window should look like this: - ![Driver Manager completed](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/20348c42-117b-4763-80d2-6e615b23ae00/public "Driver Manager completed") + ![Driver Manager completed](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/20348c42-117b-4763-80d2-6e615b23ae00/public 'Driver Manager completed') 1. Click the blue "OK" button on the lower-right to save the driver 1. Close the "Driver Manager" window by clicking the blue "Close" button on the lower-right. 9. Create a new Database Connection: + 1. In the DBeaver application menu bar, open the "Database" menu and choose: "New Database Connection": - ![New Database Connection](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/acdf7251-4238-44ee-9639-0c557518da00/public "New Database Connection") - 1. In the "Connect to a database" window - type: ```Flight``` in the search bar - 1. Choose the ```Apache Arrow Flight SQL``` driver - the window should look like this: - ![Connect to a database window](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/61cee5fe-dc75-4ac1-e558-eea3aff4c100/public "Connect to a database window") + ![New Database Connection](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/acdf7251-4238-44ee-9639-0c557518da00/public 'New Database Connection') + 1. In the "Connect to a database" window - type: `Flight` in the search bar + 1. Choose the `Apache Arrow Flight SQL` driver - the window should look like this: + ![Connect to a database window](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/61cee5fe-dc75-4ac1-e558-eea3aff4c100/public 'Connect to a database window') 1. Click the blue "Next >" button on the bottom of the window 1. On the next screen, the JDBC URL should be filled out already - just supply the Host (`localhost`) and Port (`50051`) values for the Spice runtime. The window should look like this: - ![Connect to a database window 2](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/2a2b2fdc-00db-49d3-5359-059b12342b00/public "Connect to a database window 2") + ![Connect to a database window 2](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/2a2b2fdc-00db-49d3-5359-059b12342b00/public 'Connect to a database window 2') 1. Click the "Test Connection" button - the window should look like this: - ![Test Connection results](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/a3fc5f5f-a39f-47ce-7955-4b384ec1ae00/public "Test Connection results") + ![Test Connection results](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/a3fc5f5f-a39f-47ce-7955-4b384ec1ae00/public 'Test Connection results') 1. Click the blue "OK" button to close the Connection test window 1. Click the "Connection details (name, type, ...)" button on the right 1. In the "General" section, enter: `Spice Runtime` for the "Connection name". It should look like this: - ![Name the Database Connection](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/f6d04fe1-92a1-4082-d4ea-e9daacaca200/public) + ![Name the Database Connection](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/f6d04fe1-92a1-4082-d4ea-e9daacaca200/public) 1. Click the blue "Finish" button to save the connection 10. Run a query: 1. Right-click on the Database Connection on the left - choose: "SQL Editor", and then: "Open SQL Console" as shown here: - ![Open SQL Console](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/642a5885-9e3f-4dd7-ef43-72bfce27bb00/public "Open SQL Console") - 1. In the Console window - run a query - something like: ```SELECT * FROM taxi_trips;``` + ![Open SQL Console](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/642a5885-9e3f-4dd7-ef43-72bfce27bb00/public 'Open SQL Console') + 1. In the Console window - run a query - something like: `SELECT * FROM taxi_trips;` 1. Click the triangle button to execute the SQL statement - as shown below (or use keyboard shortcut: Ctrl+Enter): - ![Execute SQL](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/2134e47b-a066-47e9-1d48-06352675f400/public "Execute SQL") + ![Execute SQL](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/2134e47b-a066-47e9-1d48-06352675f400/public 'Execute SQL') 1. See the query results as shown in this screenshot: - ![Query Results](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/0e9f3c0f-2e03-47f9-8d5e-65e078d7e900/public "Query Results") + ![Query Results](https://imagedelivery.net/HyTs22ttunfIlvyd6vumhQ/0e9f3c0f-2e03-47f9-8d5e-65e078d7e900/public 'Query Results') 1. DBeaver is now configured to query the Spice runtime using SQL! 🎉 diff --git a/spiceaidocs/docs/clients/grafana/index.md b/spiceaidocs/docs/clients/grafana/index.md index 7bf8372e..cb9dc7df 100644 --- a/spiceaidocs/docs/clients/grafana/index.md +++ b/spiceaidocs/docs/clients/grafana/index.md @@ -1,6 +1,6 @@ --- -title: "Grafana & Prometheus" -sidebar_label: "Grafana & Prometheus" +title: 'Grafana & Prometheus' +sidebar_label: 'Grafana & Prometheus' description: 'Monitoring Spice instances with Grafana & Prometheus' pagination_prev: 'clients/index' pagination_next: null @@ -39,65 +39,64 @@ global: ## Local Quickstart -This tutorial creates and configures Grafana and Prometheus locally to scrape and display metrics from several Spice instances. It assumes: - - Two Spice runtimes, `spiced-main` and `spiced-edge`, are running on `127.0.0.1:9091` and `127.0.0.1:9092` respectively. +This tutorial creates and configures Grafana and Prometheus locally to scrape and display metrics from several Spice instances. It assumes: - Two Spice runtimes, `spiced-main` and `spiced-edge`, are running on `127.0.0.1:9091` and `127.0.0.1:9092` respectively. 1. Create a `compose.yaml`: - ```yaml - version: "3" - services: - prometheus: - image: prom/prometheus:latest - volumes: - - ./prometheus.yaml:/etc/prometheus/prometheus.yml - ports: - - 9090:9090 - network_mode: "host" - grafana: - image: grafana/grafana:latest - volumes: - - ./.grafana/provisioning:/etc/grafana/provisioning - ports: - - 3000:3000 - network_mode: "host" - ``` + ```yaml + version: '3' + services: + prometheus: + image: prom/prometheus:latest + volumes: + - ./prometheus.yaml:/etc/prometheus/prometheus.yml + ports: + - 9090:9090 + network_mode: 'host' + grafana: + image: grafana/grafana:latest + volumes: + - ./.grafana/provisioning:/etc/grafana/provisioning + ports: + - 3000:3000 + network_mode: 'host' + ``` 1. Create a `prometheus.yaml` to - ```yaml - global: - scrape_interval: 1s - scrape_configs: - - job_name: spiced-main - static_configs: - - targets: ['127.0.0.1:9091'] - - job_name: spiced-edge - static_configs: - - targets: ['127.0.0.1:9092'] - ``` + ```yaml + global: + scrape_interval: 1s + scrape_configs: + - job_name: spiced-main + static_configs: + - targets: ['127.0.0.1:9091'] + - job_name: spiced-edge + static_configs: + - targets: ['127.0.0.1:9092'] + ``` 1. Add a prometheus as a source to grafana. Create a `.grafana/provisioning/datasources/prometheus.yml` - ```yaml - apiVersion: 1 + ```yaml + apiVersion: 1 - datasources: - - name: Prometheus - type: prometheus - access: proxy - url: http://localhost:9090 - isDefault: true - ``` + datasources: + - name: Prometheus + type: prometheus + access: proxy + url: http://localhost:9090 + isDefault: true + ``` 1. Run the Docker Compose - ```bash - docker-compose up - ``` + ```bash + docker-compose up + ``` 1. Go to `http://localhost:3000/dashboard/import` and add the JSON from [monitoring/grafana-dashboard.json](https://github.com/spiceai/spiceai/blob/trunk/monitoring/grafana-dashboard.json). 1. The dashboard will have data from the Spice runtimes. - \ No newline at end of file + diff --git a/spiceaidocs/docs/clients/jetbrains-datagrip/index.md b/spiceaidocs/docs/clients/jetbrains-datagrip/index.md index 5a4240b1..71f65eb3 100644 --- a/spiceaidocs/docs/clients/jetbrains-datagrip/index.md +++ b/spiceaidocs/docs/clients/jetbrains-datagrip/index.md @@ -1,6 +1,6 @@ --- -title: "JetBrains DataGrip" -sidebar_label: "JetBrains DataGrip" +title: 'JetBrains DataGrip' +sidebar_label: 'JetBrains DataGrip' description: 'Configure JetBrains Datagrip to query Spice via JDBC' sidebar_position: 3 pagination_prev: 'clients/index' @@ -16,35 +16,37 @@ pagination_next: null 4. Launch DataGrip 5. In Database Explorer menu, select "+" and choose "Driver" - ![Data Sources and Drivers menu option](./img/datagrip-1.png "Data Sources and Drivers menu option") + ![Data Sources and Drivers menu option](./img/datagrip-1.png 'Data Sources and Drivers menu option') 6. Add the JSBC jar file: - 1. Click the "+" button in "Driver Files" selection - 1. Click the "Custom JARs" button - 1. Choose the `flight-sql-jdbc-driver-.jar` jar file (the file downloaded in step 3 above) - and click "Open" - 1. Click the "Class:" selector - 1. Select `org.apache.arrow.driver.jdbc.ArrowFlightJdbcDriver` - ![Driver Class selector](./img/datagrip-3.png "Driver Class selector") - -8. Enter the driver settings: - 1. In the "Name" field - enter: ```Apache Arrow Flight SQL``` - 1. Add "URL Template" Default: `jdbc:arrow-flight-sql://{host}:{port}\?useEncryption=false&disableCertificateVerification=true` - 1. Click "Ok" - ![Driver creation window](./img/datagrip-4.png "Driver creation window") - -9. Create a new Database Connection: - 1. In Database Explorer menu, select "+", choose "Data Source" > "Arrow Flight JDBC" - 2. Set the host to `localhost` and the port to `50051` - 3. In "Authentication" select "No auth" - 4. Click "Test Connection" to verify - -![New Data Source](./img/datagrip-5.png "New Data Source") + + 1. Click the "+" button in "Driver Files" selection + 1. Click the "Custom JARs" button + 1. Choose the `flight-sql-jdbc-driver-.jar` jar file (the file downloaded in step 3 above) - and click "Open" + 1. Click the "Class:" selector + 1. Select `org.apache.arrow.driver.jdbc.ArrowFlightJdbcDriver` + ![Driver Class selector](./img/datagrip-3.png 'Driver Class selector') + +7. Enter the driver settings: + + 1. In the "Name" field - enter: `Apache Arrow Flight SQL` + 1. Add "URL Template" Default: `jdbc:arrow-flight-sql://{host}:{port}\?useEncryption=false&disableCertificateVerification=true` + 1. Click "Ok" + ![Driver creation window](./img/datagrip-4.png 'Driver creation window') + +8. Create a new Database Connection: + 1. In Database Explorer menu, select "+", choose "Data Source" > "Arrow Flight JDBC" + 2. Set the host to `localhost` and the port to `50051` + 3. In "Authentication" select "No auth" + 4. Click "Test Connection" to verify + +![New Data Source](./img/datagrip-5.png 'New Data Source') 10. Run a query: 1. Right-click on the connection in Database Explorer and choose "New" > "Query Console" - ![Create new Query Console](./img/datagrip-6.png "Create new Query Console") - 1. In the Console window - add a query - something like: ```SELECT * FROM taxi_trips;``` and click the triangle button to execute the SQL statement + ![Create new Query Console](./img/datagrip-6.png 'Create new Query Console') + 1. In the Console window - add a query - something like: `SELECT * FROM taxi_trips;` and click the triangle button to execute the SQL statement 1. See the query results: - ![Query Results](./img/datagrip-7.png "Query Results") + ![Query Results](./img/datagrip-7.png 'Query Results') DataGrip is now configured to query the Spice runtime using SQL! 🎉 diff --git a/spiceaidocs/docs/clients/superset/index.md b/spiceaidocs/docs/clients/superset/index.md index 967087e5..7fdb4fcc 100644 --- a/spiceaidocs/docs/clients/superset/index.md +++ b/spiceaidocs/docs/clients/superset/index.md @@ -13,7 +13,7 @@ import TabItem from '@theme/TabItem'; Use [Apache Superset](https://superset.apache.org/) to query and visualize datasets loaded in Spice. > Apache Superset is a modern, enterprise-ready business intelligence web application. It is fast, lightweight, intuitive, and loaded with options that make it easy for users of all skill sets to explore and visualize their data, from simple pie charts to highly detailed deck.gl geospatial charts. -> +> > – [Apache Superset documentation](https://superset.apache.org/docs/intro/) ## Start Apache Superset with Flight SQL & DataFusion SQL Dialect support @@ -42,6 +42,7 @@ Select the appropriate tab based on whether you are experimenting with this feat Log into Apache Superset at [http://localhost:8088](http://localhost:8088) with the username and password `admin/admin`. Follow the below steps to configure a database connection to Spice manually, or run `make import-dashboards` to automatically configure the connection and create a sample dashboard. + ## Generic / Virtual Machine @@ -68,7 +69,7 @@ Select the appropriate tab based on whether you are experimenting with this feat ## Temporary Docker Container Modification It's possible to modify a running Docker container to install the library, but the change will be lost on container restart. - + ```bash docker exec -u root -it superset /bin/bash @@ -104,4 +105,4 @@ Click `Test Connection` to verify the connection. Click `Connect` to save the connection. -Start exploring the datasets loaded in Spice by creating a new dataset in Apache Superset to match one of the existing tables. \ No newline at end of file +Start exploring the datasets loaded in Spice by creating a new dataset in Apache Superset to match one of the existing tables. diff --git a/spiceaidocs/docs/clients/tableau/index.md b/spiceaidocs/docs/clients/tableau/index.md index c9a428f8..3fa76ce5 100644 --- a/spiceaidocs/docs/clients/tableau/index.md +++ b/spiceaidocs/docs/clients/tableau/index.md @@ -25,7 +25,7 @@ Download and install [Tableau Desktop](https://www.tableau.com/products/desktop/ - Visit the [Flight SQL JDBC driver](https://central.sonatype.com/artifact/org.apache.arrow/flight-sql-jdbc-driver/) page - Select the **Versions** tab -- Click **Browse** next to the version you want to download +- Click **Browse** next to the version you want to download - Click the `flight-sql-jdbc-driver-XX.XX.XX.jar` file (with only the `.jar` file extension) from the list of files to download the driver jar file 2. **Copy the downloaded jar file into the following directory based on your operating system** @@ -39,13 +39,15 @@ Download and install [Tableau Desktop](https://www.tableau.com/products/desktop/ 1. Open **Tableau** 2. In the **Connect** column, under **To a Server**, select **Other Databases (JDBC)**. 3. Provide the following configuration: - - **URL**: `jdbc:arrow-flight-sql://127.0.0.1:50051?useEncryption=false` - - **Dialect**: `PostgreSQL` - + +- **URL**: `jdbc:arrow-flight-sql://127.0.0.1:50051?useEncryption=false` +- **Dialect**: `PostgreSQL` + + 4. Ensure Spice is running 5. Click **Sign In** -## Working with Spice datasets +## Working with Spice datasets Once connected, Spice datasets will be listed under the `datafusion.public` schema. @@ -60,6 +62,3 @@ Tableau support is currently in alpha, and not all functionality is supported. U - - -