Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Redash から Autonomous Databaseに接続! できるようにしてみました
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
snickerjp
April 16, 2024
Programming
360
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Redash から Autonomous Databaseに接続! できるようにしてみました
OCI Autonomous DatabaseにRedashから接続できるように改修をして、プルリクエストを上げて
さらに、Redashのメンテナーになったお話です
snickerjp
April 16, 2024
More Decks by snickerjp
See All by snickerjp
生成AI-区分け
snickerjp
0
43
生成AI-2025年1月-2月リリースまとめ
snickerjp
0
37
生成AI-NotebookLLMPlusの活用
snickerjp
0
140
生成AI-開発フローに対応する生成AIツール(GitHub Copilot Agent-mode)
snickerjp
0
60
AI-衝撃のロボティクス
snickerjp
0
43
VS Code マルウェア注意喚起
snickerjp
0
340
GWに最適?VS Code Day Skills Challenge の ご紹介
snickerjp
0
88
実はとっても便利! VisualStudio Code の Remote SSH機能
snickerjp
0
1.2k
今日から使える! VisualStudio Code の プロファイル機能
snickerjp
0
360
Other Decks in Programming
See All in Programming
5分で問診!Composer セキュリティ健康診断
codmoninc
0
580
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
270
act1-costs.pdf
sumedhbala
0
250
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
190
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
2
900
共通化で考えるべきは、実装より公開する型だった
codeegg
0
270
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
300
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
150
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
350
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
120
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
390
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.7k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
810
Paper Plane (Part 1)
katiecoart
PRO
1
9.8k
How GitHub (no longer) Works
holman
316
150k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
410
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
760
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
A Tale of Four Properties
chriscoyier
163
24k
Everyday Curiosity
cassininazir
0
260
Amusing Abliteration
ianozsvald
1
240
The Cult of Friendly URLs
andyhume
79
7k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Transcript
Redash から Autonomous Databaseに接続! できるようにしてみました OCIjp #50 2024年4⽉16⽇
• snickerjp(X: @snicker_jp) ◦ 普段はインフラのエンジニア ◦ OCI歴は2019年の東京リージョン 出来てから • 好きなもの
◦ サンリオピューロランド と ◦ 仮面ライダー・戦隊モノ にハマっています • 発表、やるやるって何年も言い続けてやっていなかったので 今回やることにしました 2 自己紹介
3 Autonomous Database (ATP,ADW,JSON) 使ったことある人! 挙手✋ 質問
4 Redash 知ってるよ!て方 挙手✋ 質問
5 知っている⽅も 知らない⽅も ぜひ楽しんで聞いてください (きっと楽しんでもらえるはず)
• オープンソースで公開されている ◦ BIツール ◦ Webベース ◦ 2015,2016年あたりから公開 ◦ 多くのデータソースに対応
◦ Pythonがメイン開発言語 ◦ OracleDB,MySQL,PostgreSQL,BigQuery,Redshit 主要な物は大体対応 • getredash/redash: Make Your Company Data Driven. Connect to any data source, easily visualize, dashboard and share your data. ◦ https://github.com/getredash/redash 6 Redashとは?
• 2020年あたりから落ちていて、2022年あたりからまた戻っている感 じ 7 Redashとは?
• V10くらいまで ◦ Host ◦ Port ◦ DSN Service Name
を使って • Oracle接続文字列を生成 • cx_Oracleの「cx_Oracle.makedsn」 を利用 • cx_Oracleに「カスタム文字列」を 入力するオプションはあるが 使えない 8 RedashのOracle接続設定
9 Autonomous Database • 接続文字列がちょっと独特(だいぶ独特?)
10 このままだと Autonomous Database (ATP,ADW,JSON) に 接続するための設定を入れられない Redash
• 修正してみました ◦ Pythonできないかつ 私はプログラミングほぼできない ◦ 社内に聞いてみた(その5秒後) ◦ すぐChatGPTに聞いてみた ◦
なんか、そしたら動いた 11 Redashの修正
• 特定の文字列を入れると 「カスタム文字列」を有効にする変更 ◦ 「_useservicename」を入力(固定値) ◦ Portは必須なので使わないけど入れる ◦ DSN Service
Nameに Autonomous Databaseの接続文字列 を入力 12 変更点と使い方
13 条件分岐を入れた
14 条件分岐を入れた それだけです!
15 接続できるようになりました!
16 脱線
17 OSSなので修正プルリクエスト出してみました • Do not makedsn for query_runner/oracle.py by snickerjp
· Pull Request #6332 · getredash/redash ◦ https://github.com/getredash/redash/pull/6332 • アップデートで元に戻るのが嫌だった ◦ また、接続できなくなるとか
18 マージしてもらいました!
19 気が付いたら • この後Organization誘われて ◦ メンテナーとなりました🤣
20 OCI->OSS入学
21 他にも機能追加・改善などしました • Add offset for query_runner/oracle.py Error Message. by
snickerjp · Pull Request #6373 · getredash/redash ◦ https://github.com/getredash/redash/pull/6373 ▪ エラー時のオフセットを表示できるようにした • Replace cx_Oracle with python-oracledb by snickerjp · Pull Request #6386 · getredash/redash ◦ https://github.com/getredash/redash/pull/6386 ▪ Pythonのcx_Oracleからpython-oracledbへ移行 • Add redash.query_runner.oracle to default_query_runners by snickerjp · Pull Request #6389 · getredash/redash ◦ https://github.com/getredash/redash/pull/6389 ▪ python-oracledb対応したことにより、Oracle Clientがいらなくなったので、 Default Query Runnerに追加
22 preview で、使える状態なので 使ってみたい方は検証機などで検証して みてください