re:dash is awesome

42
re:dash is awesome

Upload: hiroshi-toyama

Post on 16-Apr-2017

9.641 views

Category:

Technology


0 download

TRANSCRIPT

re:dash is awesome

 

Agenda1. Main Feature

2. Build

3. Programmable

4. Security

5. Our use case

6. Summary

Main Feature

Main Featuresharing query

scheduling query

Pluggable Backend

Low cost

Caching

sharing querycan share sql between members

We use . But ansi sql syntax is extremely hard socan review sql.

Reuse query another member.

fork can do sql

Presto

schedule queryrefresh interval

per minute, per hour

Specify the time

every daynot cron syntax

 

Pluggable backendssupports a great variety of data sources.

If you are making query runner, variety connect data source.

write by Python.

See.https://github.com/EverythingMe/redash/tree/master/redash/query_runner

Data Source

Low CostBusiness intelligence tool is very high cost.

If you use AWS, for small deployments t2.micro should beenough.

We regist 250 queries, using instance type is m3.medium.

memory size is 3.75GB.1 CPU.

Minimum effort visualizationwrite query

create graph

csv and image export

you will release from the Excel pain!

easy updatedownload.

With deploy runs DB migration.

one command update.

https://gist.githubusercontent.com/arikfr/440d1403b4aeb76ebaf8/raw/0d814544e37e97f08c6453ffbe9b13345d2ef39f/fabfile.py

fab -Hredash01 -uubuntu deploy_latest_release

recommended clear cache after upgrade...

CachingQuery Results Cache in PostgreSQL.

Do not run unnecessary SQL

See the results and come to the company in morning, notneed wait!

So Google Bigquery is Query pricing, one query results canshare.

Build

BuildSetup Script

AWS EC2 AMI

Google Compute Engine image

※ recommended to use ubuntu.

DependenciesPython

Nginx

Celery

Distributed Task Queue

PostgreSQL

Redis

WE love OSS♥can read a code.

We can trust a code.

if Well do not know behaviors, read the code.

many contributions on github.

330 closed pull requests.

Programmable

ProgrammableParameters

http API

visualization your API and your python code.

GET parametercan write sql by mustache template.

select * from user where = {{id}}

http://demo.redash.io/queries/146?p_id=1

start with http string become to link.

HTTP APIre:dash have rest API.

API KEY can be per user and per query.

curl 'https://redash/api/queries/194/results.json? \api_key=XXXXX'

API KEY can modify by user.(ver 0.8)

visualization your APIvisualization your json API.

See format.

Also visualization your python code, print same format.

http://docs.redash.io/en/latest/dev/results_format.html

security

Management GUIvery simply.

add user and group.

modify permission.

view event log.

execute queryviewcreateetc..

 

Audit loggingviewlogincreateapi_getupdatesubscribeunsubscribeeditexecuteautorefreshetc..

permission managementCan set permissions for each Member.

Grant permissions to groups.

Members belong to group.

Also, can belong to multiple groups.

permission managementcreate_dashboard

create_query

edit_dashboard

edit_query

view_query

view_source

execute_query

admin

Google Apps authenticationyou can Data linkage your google account.

defaults admin/admin account delete is better.

Can disable password login As below.

export REDASH_PASSWORD_LOGIN_ENABLED=false

SSL(https) ConnectionYou can connect with SSL.

Need modify nginx configuration.

see. http://docs.redash.io/en/latest/misc/ssl.html

Our SSL Setting

Other FeatureSAML Authentication

Threshold Alert

our use case

our use caseaction history and log data stores in Redshift, User andmaster data in mysql.

data analytics complete only sql as possible.

I do not want to write code as possible for analytics.

We often write complicatedly sql.

Using DatasourceMysql

PostgreSQL

Presto(prestogres)

redshift

 

Prestoopen source distributed SQL query engine.

Presto can join multiple data sources.

We join mysql and redshift by Presto.

Ansi SQL Syntax.

PrestogresPostgreSQL protocol gateway for Presto.

rewrite queries before sending Presto to PostgreSQL.

re:dash connecte with PostgreSQL protocol to presto.

But can directly connect to presto with current version.

Current Statusregistered 300 queries

1.8GB disk used

old chache is automatically deleteset environment.

Our request..date and time range filter.

scheduling query with cron syntax.

define csv encoding with environment.

Thanks!