際際滷

際際滷Share a Scribd company logo
Tarantula: The Cloud-Native DB Gateway
覈谿
01 About ORASCOPE
02 REST API  MSA
03 API GATEWAY
06 WHERE FOR SALE?
04 DB GATEWAY: Tarantula
Tarantula 蠍壱  覦
05
About ORASCOPE
About ORASCOPE
ORASCOPE
譯殊 れ 豌 螳覦 SW 
Oracle/PostgreSQL/EDB 一危磯伎 貉ろ  覦 蟯 SW 襯 螳覦螻 給.
る殊れ
伎
る曙殊
蟾煙
2013 12 12
 02-2686-8400
覯
讌
一危磯伎 蟯 貉ろ, 襭 螳覦
語 蟲襦蟲 蟆曙碁 662 ろ殊る
1549 (襴朱, 觚)
OraScope.Net for Oracle
OraScope.Net for Postgres
Tarantula: The Cloud-Native DB Gateway
 讌 覈磯 襭
http://www.orascope.net
http://www.tarantula.kr
EDB Postgres SQL  - KT2013.08 ~ 2014.03
る狩 SQL  - 2014.05 ~ 2014.09
る狩 to EDB Postgres  - れ ICT2014.08 ~ 2014.09
EDB Postgres 蠍一讌  れ 貉ろ 讌覲伎
 覦 る狩 焔   GS 襴
2015.01 ~ 
觚襦 豌伎  EDB 蟲豢 覦 讌覲伎 -
蟲譟壱螻旧
2018.12 ~ 
EDB Postgres SQL   殊煙2018.09 ~ 2019.01
KEB  谿碁 EDB Postgres 蟲豢2019.04 ~ 
企 sales@orascope.net
REST API MSA
-6-
DATA
https://developers.kakao.com/docs/restapi/kakaopay-api https://jsonplaceholder.typicode.com/todos/
REST
API
豌 覲 JSON
牛
JSON Response
DATA Request
API CRUD 豌 / 襴
,譟壱,,
Client Request
HTTP Protocal
API(Application Programming Interface; 襦蠏碁 誤壱伎)
: 轟襦蠏碁 蠍磯レ企 一危磯ゼ るジ 襦蠏碁   襦 覩碁Μ   旧 蠏豺
 襦蠏碁蟆 一危 覦 襦蠏碁 蠍磯 讌 螻牛 襦蠏碁螳   豐讌 覦 覲願 螳
REST API(REpresentational State Transfer API)
: REST襯 蠍磯朱 觜 API襯 蟲 , HTTP 譴旧 蠏豺 蠍磯
https://developers.naver.com/docs/search/blog/ https://jsonplaceholder.typicode.com/todos/4
REST API ?
-7-
蠍一ヾ MONOLITHIC MSA(MicroService
Architecture)
UI
MICROSERVICEMICROSERVICE MICROSERVICE
MICROSERVICE
VS
REST API
REST API
MSA(MicroService Architecture)
豌 ろ 觜讀/ 觜 蠍磯ル襦 襴曙 襴貅伎覯/ 一危覯伎 覯襦 覿襴 蟲豢
螳覦 蟲譟
Data Access
layer
Business
layer
Presentation
layer
MICROSERVICE
襷危襦觜れろ豎(MSA)
-8-
Only One
Database
讌觜 蟯螻觜  觜 讀蟠觜
覈襴 ろ豎 (蠍一ヾ 觜 覦)
 襦蠏碁  覦 譴 一危磯伎れ 一危磯ゼ ロ れ 蠍磯レ 蟲
 襦蠏碁 覦壱, 覓語 願屋,  覦 蠏碁企螳 企れ
Monolithic
-9-
讌
Database
Oracle
REST API
讌觜
REST API
蟯螻觜
REST API
讀蟠觜
REST API
觜
蟯螻
Database
EDB Postgres
讀蟠
Database
MySQL

Database
Mongo DB
襷危襦觜 ろ豎
 襦蠏碁  襷危襦 觜る 覿磯 螳 觜 覲 一危磯伎るゼ 
襦 るジ 觜る 覿磯 蠍 覓語 伎煙 牛 蟯襴 蠍一 
Microservice
-10-
蟯螻
Service 讀蟠
Service
伎
Service
れ螳伎蟆
Service

Service
讌
Service

Service
MSA 蟯襴 企至?
覿磯  觜るれ 企至 螻殊朱 危 蟆瑚?
Governance
API Gateway
-12-
API GATEWAY ?   endpoint
襴曙朱 蟲焔 觜れ 語, API 語, 襦 覦碁一, 螻牛 襦讌 豌襴, 襦貊 覲 煙 豌襴
API GATEWAY
REST API
讌觜
REST API
觜
REST API
觜
REST API
伎れ觜
REST API
API Gateway
Client
-13-
API Gateway  蠍磯
API 蟯襴, 殊壱, 語/蟠, 襦蟾, 碁  etc.
API
Routing
Mediation
Limitation
AggregationLogging
Statistic
Certification
API Gateway
-14-
API Gateway 蟯 
API Gateway ろ  蠍磯 螻   覈襦
API Gateway
Tarantula: The Cloud-Native DB Gateway
Advanced FDW / Quick OpenAPI service 蟲豢
-16-
API Gateway?
れ MSA蟆曙 觜るゼ REST API 覦朱 手蟆 API Gateway 襯 蟆曙
蠏狩
れ 願鍵譬 一危磯伎る REST API 覦朱 手蟆 Access(CRUD ) 蟆
  讌 蟾?
れ Database襯 REST API 覦朱 蟆 DB Gateway襯 牛伎 Access 螳
DB Gateway?
Tarantula : Cloud-Native DB Gateway
DB Gateway
-17-
The Cloud-Native DB Gateway
REST API
EDB
Postgres
Oracle
MySQL
DB Gateway
Client
-18-
讌
一危磯伎
Tarantula 牛 襦 一危磯伎るゼ
豢螳  朱,  讌譴
一危磯伎れ 覈襦 一検螻 螳給.
(2019.06 )
螻 豢螳 譴.
Supported database
RDBMS + NOSQL 覈 讌
-19-
DB GATEWAY
HYUNDAI
KIA
SSANGYONG
P_STORE
O_STORE
M_STORE
BRAND NAME PRICE
hyundai sonata 2000
hyundai stella 1000
hyundai grandeur 3000
BRAND NAME PRICE
kia pride 100
kia soul 200
kia morning 300
BRAND NAME PRICE
ssangyong korando 2000
ssangyong musso 3000
ssangyong tivoli 1000
 1/2
Client
-20-
curl -u tarantula:king -H 'x-tnt-token: zhIPa1t/B3jXGb/m7I551BVVNifi26bgn+YsLQtDaKgBsM25PuyOXrWhVOXolymi' -i -X POST
http://localhost:9083/tnt/business -H 'Content-Type: application/json' -d '{"method":htp_getcar","params":{"brand":"all", "price_above":20}}'
{
"jsonrpc": "2.0",
"id": "71cd19cabda0a5ab3a038389674ca4fb",
"result": {
"src": 0,
"key": "business-getcar:1498c7e8c3564e64e71eb73d23c3dfd7",
"output": [
{
"_error_": null,
"_data_": [
{
"brand": "hyundai",
"name": "sonata",
"price": 2000
},
{
"brand": kia",
"name": pride",
"price": 100
},
{
"brand": ssangyong",
"name": tivoli",
"price": 12000
}
]
}
]
}
}
 2/2
-21-
Microservice
Cloud-Native
DB GATEWAY
Cloud-Native
企 API Gateway  磯 螳ロ覃, DB CALL  Tarantula  豌
Microservice
MicroService Architecture    Tarantula 讌
Client
RESTful API
API GATEWAY
-22-
れ螳 覈磯 蟯襴 覃伎 蟲觜  レ 覦 讀螳 讌螳 螳ロ.
覈磯 覃
-23-
一危 譴 ろ豎
襷危襦 觜る 覿  一危磯伎 譬襯
磯ジ
螳 NATIVE SQL襦    朱, SQL 

WAS 襯  蠍磯  螳  給.
RDBMS / NOSQL 一危 譟壱
RDBMS  NOSQL 螳 一危 譟壱 
讌. 一危 譟壱 危襴貅伎 
GATWAY 譟壱   譴.
一危磯伎  豌
一危 螻 譯殊牡 一危磯伎り 蟲豌企
危襴 貅伎  讌 給.
讌   焔 
貉 貉企 蠍一   
 螳
殊 覦 企殊磯 覈 所 蟲豢  
給.
MSA 襯  狩 DB Gateway
DB 覓瑚  り 覦 焔 蟲 SW襦
 螳 螳ロ 谿曙 企
.
OLTP  OLAP  一危磯伎れ 一危磯ゼ
れ螳朱 襾語 譟壱   給.
覃 一危磯伎 れ螳 譟壱
 Open API 觜 蟲豢
REST API 覦煙 蟲豢  螳
蠍一朱 豢    給.
 襭覃 蟇一 一危磯伎れ 螳
OpenAPI 觜るゼ 蟲豢 給.
MSA ろ豌  覿
觜れ  覃 一危磯伎 
蟠ロ MSA  覿. 企ゼ 所
蟲豢    覦 螻牛.
螳ロ CACHING 蠍磯
螳ロ 貂 蠍磯レ 螳豢螻 , 一危 覲蟆曙
 蟆曙
覿 貎朱Μ 語 覦讌  給.
Tarantula: Cloud-Native DB Gateway
Tarantula 蠍壱  覦
-25-
ろる DDL 觜蟲, 一危 觜蟲
一危磯伎 襷  襦 るジ 一危磯伎 螳 ろる DDL 觜蟲, 一危 觜蟲
Tarantula 蠍壱  覦
Cloud-Native
DB GATEWAY
螳覦 DB
QA DB
伎 DB
螳覦 DB TABLE QA DB TABLE 伎 DB TABLE
COL1 VARCHAR(20) COL1 VARCHAR(20) COL1 VARCHAR(20)
COL2 VARCHAR(10) COL2 VARCHAR(20) COL2 VARCHAR(10)
COL3 VARCHAR(50) COL3 VARCHAR(50) COL3 VARCHAR(50)
COL4 VARCHAR(100) COL4 VARCHAR(100) COL4 VARCHAR(100)
COL5 NUMERIC(10,2) COL5 NUMERIC(10,2) COL5 NUMERIC(10,2)
-26-
一危磯伎 牛 覈磯
一危磯伎 譯殊 焔 讌襯  れ螳 覃 一危磯伎 覈磯
Tarantula 蠍壱  覦
Cloud-Native
DB GATEWAY
DB #1
DB #2
DB #3
-27-
れ螳 一危 郁
襦 るジ 一危磯伎れ  企 譟一誤 一危 譟壱 螳
Tarantula 蠍壱  覦
Cloud-Native
DB GATEWAY
譯朱 DB
 DB
螻 DB
SELECT a.order_no
, b.goods_cd
, b.goods_nm
, c.stk_qty
FROM order_db_table(100001) a
, goods_db_table(123456) b
, stock_db_table(123456) c
WHERE a.goods_cd = b.goods_cd
AND b.goods_cd = c.goods_cd
WHERE FOR SALE?
WHERE FOR SALE?
蠍旧 / 旧
一危 譴 API 蟲豢 覓危
Tarantula  蟆 螻螳
MICROSERVICE   螻螳
MSA ろ豌  螻螳
API/DB Gateway 
OPEN API 蟲豢  螻螳
蠍一ヾ 蟇一 一危磯ゼ OPEN API
覦 朱 碁 語 螻 
螻螳
願鍵譬 DB 螳 一危 蟲 覦 譟壱
願鍵譬 一危磯伎 一危磯ゼ
れ螳 朱 MERGE 譟壱螳
螳ロ 殊 一危磯伎 襷
 螳ロ
觜 襷襯 螻  螻螳
EAI 襭  螻螳
狩 一危磯ゼ  一危磯伎
 譟壱蠍  EAI 襭朱
一危 覲旧襯  蟆曙, 覿
覲旧襯 蟇
Thank You
Contact Us

More Related Content

[Pgday.Seoul 2019] Advanced FDW

  • 2. 覈谿 01 About ORASCOPE 02 REST API MSA 03 API GATEWAY 06 WHERE FOR SALE? 04 DB GATEWAY: Tarantula Tarantula 蠍壱 覦 05
  • 4. About ORASCOPE ORASCOPE 譯殊 れ 豌 螳覦 SW Oracle/PostgreSQL/EDB 一危磯伎 貉ろ 覦 蟯 SW 襯 螳覦螻 給. る殊れ 伎 る曙殊 蟾煙 2013 12 12 02-2686-8400 覯 讌 一危磯伎 蟯 貉ろ, 襭 螳覦 語 蟲襦蟲 蟆曙碁 662 ろ殊る 1549 (襴朱, 觚) OraScope.Net for Oracle OraScope.Net for Postgres Tarantula: The Cloud-Native DB Gateway 讌 覈磯 襭 http://www.orascope.net http://www.tarantula.kr EDB Postgres SQL - KT2013.08 ~ 2014.03 る狩 SQL - 2014.05 ~ 2014.09 る狩 to EDB Postgres - れ ICT2014.08 ~ 2014.09 EDB Postgres 蠍一讌 れ 貉ろ 讌覲伎 覦 る狩 焔 GS 襴 2015.01 ~ 觚襦 豌伎 EDB 蟲豢 覦 讌覲伎 - 蟲譟壱螻旧 2018.12 ~ EDB Postgres SQL 殊煙2018.09 ~ 2019.01 KEB 谿碁 EDB Postgres 蟲豢2019.04 ~ 企 sales@orascope.net
  • 6. -6- DATA https://developers.kakao.com/docs/restapi/kakaopay-api https://jsonplaceholder.typicode.com/todos/ REST API 豌 覲 JSON 牛 JSON Response DATA Request API CRUD 豌 / 襴 ,譟壱,, Client Request HTTP Protocal API(Application Programming Interface; 襦蠏碁 誤壱伎) : 轟襦蠏碁 蠍磯レ企 一危磯ゼ るジ 襦蠏碁 襦 覩碁Μ 旧 蠏豺 襦蠏碁蟆 一危 覦 襦蠏碁 蠍磯 讌 螻牛 襦蠏碁螳 豐讌 覦 覲願 螳 REST API(REpresentational State Transfer API) : REST襯 蠍磯朱 觜 API襯 蟲 , HTTP 譴旧 蠏豺 蠍磯 https://developers.naver.com/docs/search/blog/ https://jsonplaceholder.typicode.com/todos/4 REST API ?
  • 7. -7- 蠍一ヾ MONOLITHIC MSA(MicroService Architecture) UI MICROSERVICEMICROSERVICE MICROSERVICE MICROSERVICE VS REST API REST API MSA(MicroService Architecture) 豌 ろ 觜讀/ 觜 蠍磯ル襦 襴曙 襴貅伎覯/ 一危覯伎 覯襦 覿襴 蟲豢 螳覦 蟲譟 Data Access layer Business layer Presentation layer MICROSERVICE 襷危襦觜れろ豎(MSA)
  • 8. -8- Only One Database 讌觜 蟯螻觜 觜 讀蟠觜 覈襴 ろ豎 (蠍一ヾ 觜 覦) 襦蠏碁 覦 譴 一危磯伎れ 一危磯ゼ ロ れ 蠍磯レ 蟲 襦蠏碁 覦壱, 覓語 願屋, 覦 蠏碁企螳 企れ Monolithic
  • 9. -9- 讌 Database Oracle REST API 讌觜 REST API 蟯螻觜 REST API 讀蟠觜 REST API 觜 蟯螻 Database EDB Postgres 讀蟠 Database MySQL Database Mongo DB 襷危襦觜 ろ豎 襦蠏碁 襷危襦 觜る 覿磯 螳 觜 覲 一危磯伎るゼ 襦 るジ 觜る 覿磯 蠍 覓語 伎煙 牛 蟯襴 蠍一 Microservice
  • 12. -12- API GATEWAY ? endpoint 襴曙朱 蟲焔 觜れ 語, API 語, 襦 覦碁一, 螻牛 襦讌 豌襴, 襦貊 覲 煙 豌襴 API GATEWAY REST API 讌觜 REST API 觜 REST API 觜 REST API 伎れ觜 REST API API Gateway Client
  • 13. -13- API Gateway 蠍磯 API 蟯襴, 殊壱, 語/蟠, 襦蟾, 碁 etc. API Routing Mediation Limitation AggregationLogging Statistic Certification API Gateway
  • 14. -14- API Gateway 蟯 API Gateway ろ 蠍磯 螻 覈襦 API Gateway
  • 15. Tarantula: The Cloud-Native DB Gateway Advanced FDW / Quick OpenAPI service 蟲豢
  • 16. -16- API Gateway? れ MSA蟆曙 觜るゼ REST API 覦朱 手蟆 API Gateway 襯 蟆曙 蠏狩 れ 願鍵譬 一危磯伎る REST API 覦朱 手蟆 Access(CRUD ) 蟆 讌 蟾? れ Database襯 REST API 覦朱 蟆 DB Gateway襯 牛伎 Access 螳 DB Gateway? Tarantula : Cloud-Native DB Gateway DB Gateway
  • 17. -17- The Cloud-Native DB Gateway REST API EDB Postgres Oracle MySQL DB Gateway Client
  • 18. -18- 讌 一危磯伎 Tarantula 牛 襦 一危磯伎るゼ 豢螳 朱, 讌譴 一危磯伎れ 覈襦 一検螻 螳給. (2019.06 ) 螻 豢螳 譴. Supported database RDBMS + NOSQL 覈 讌
  • 19. -19- DB GATEWAY HYUNDAI KIA SSANGYONG P_STORE O_STORE M_STORE BRAND NAME PRICE hyundai sonata 2000 hyundai stella 1000 hyundai grandeur 3000 BRAND NAME PRICE kia pride 100 kia soul 200 kia morning 300 BRAND NAME PRICE ssangyong korando 2000 ssangyong musso 3000 ssangyong tivoli 1000 1/2 Client
  • 20. -20- curl -u tarantula:king -H 'x-tnt-token: zhIPa1t/B3jXGb/m7I551BVVNifi26bgn+YsLQtDaKgBsM25PuyOXrWhVOXolymi' -i -X POST http://localhost:9083/tnt/business -H 'Content-Type: application/json' -d '{"method":htp_getcar","params":{"brand":"all", "price_above":20}}' { "jsonrpc": "2.0", "id": "71cd19cabda0a5ab3a038389674ca4fb", "result": { "src": 0, "key": "business-getcar:1498c7e8c3564e64e71eb73d23c3dfd7", "output": [ { "_error_": null, "_data_": [ { "brand": "hyundai", "name": "sonata", "price": 2000 }, { "brand": kia", "name": pride", "price": 100 }, { "brand": ssangyong", "name": tivoli", "price": 12000 } ] } ] } } 2/2
  • 21. -21- Microservice Cloud-Native DB GATEWAY Cloud-Native 企 API Gateway 磯 螳ロ覃, DB CALL Tarantula 豌 Microservice MicroService Architecture Tarantula 讌 Client RESTful API API GATEWAY
  • 22. -22- れ螳 覈磯 蟯襴 覃伎 蟲觜 レ 覦 讀螳 讌螳 螳ロ. 覈磯 覃
  • 23. -23- 一危 譴 ろ豎 襷危襦 觜る 覿 一危磯伎 譬襯 磯ジ 螳 NATIVE SQL襦 朱, SQL WAS 襯 蠍磯 螳 給. RDBMS / NOSQL 一危 譟壱 RDBMS NOSQL 螳 一危 譟壱 讌. 一危 譟壱 危襴貅伎 GATWAY 譟壱 譴. 一危磯伎 豌 一危 螻 譯殊牡 一危磯伎り 蟲豌企 危襴 貅伎 讌 給. 讌 焔 貉 貉企 蠍一 螳 殊 覦 企殊磯 覈 所 蟲豢 給. MSA 襯 狩 DB Gateway DB 覓瑚 り 覦 焔 蟲 SW襦 螳 螳ロ 谿曙 企 . OLTP OLAP 一危磯伎れ 一危磯ゼ れ螳朱 襾語 譟壱 給. 覃 一危磯伎 れ螳 譟壱 Open API 觜 蟲豢 REST API 覦煙 蟲豢 螳 蠍一朱 豢 給. 襭覃 蟇一 一危磯伎れ 螳 OpenAPI 觜るゼ 蟲豢 給. MSA ろ豌 覿 觜れ 覃 一危磯伎 蟠ロ MSA 覿. 企ゼ 所 蟲豢 覦 螻牛. 螳ロ CACHING 蠍磯 螳ロ 貂 蠍磯レ 螳豢螻 , 一危 覲蟆曙 蟆曙 覿 貎朱Μ 語 覦讌 給. Tarantula: Cloud-Native DB Gateway
  • 25. -25- ろる DDL 觜蟲, 一危 觜蟲 一危磯伎 襷 襦 るジ 一危磯伎 螳 ろる DDL 觜蟲, 一危 觜蟲 Tarantula 蠍壱 覦 Cloud-Native DB GATEWAY 螳覦 DB QA DB 伎 DB 螳覦 DB TABLE QA DB TABLE 伎 DB TABLE COL1 VARCHAR(20) COL1 VARCHAR(20) COL1 VARCHAR(20) COL2 VARCHAR(10) COL2 VARCHAR(20) COL2 VARCHAR(10) COL3 VARCHAR(50) COL3 VARCHAR(50) COL3 VARCHAR(50) COL4 VARCHAR(100) COL4 VARCHAR(100) COL4 VARCHAR(100) COL5 NUMERIC(10,2) COL5 NUMERIC(10,2) COL5 NUMERIC(10,2)
  • 26. -26- 一危磯伎 牛 覈磯 一危磯伎 譯殊 焔 讌襯 れ螳 覃 一危磯伎 覈磯 Tarantula 蠍壱 覦 Cloud-Native DB GATEWAY DB #1 DB #2 DB #3
  • 27. -27- れ螳 一危 郁 襦 るジ 一危磯伎れ 企 譟一誤 一危 譟壱 螳 Tarantula 蠍壱 覦 Cloud-Native DB GATEWAY 譯朱 DB DB 螻 DB SELECT a.order_no , b.goods_cd , b.goods_nm , c.stk_qty FROM order_db_table(100001) a , goods_db_table(123456) b , stock_db_table(123456) c WHERE a.goods_cd = b.goods_cd AND b.goods_cd = c.goods_cd
  • 29. WHERE FOR SALE? 蠍旧 / 旧 一危 譴 API 蟲豢 覓危 Tarantula 蟆 螻螳 MICROSERVICE 螻螳 MSA ろ豌 螻螳 API/DB Gateway OPEN API 蟲豢 螻螳 蠍一ヾ 蟇一 一危磯ゼ OPEN API 覦 朱 碁 語 螻 螻螳 願鍵譬 DB 螳 一危 蟲 覦 譟壱 願鍵譬 一危磯伎 一危磯ゼ れ螳 朱 MERGE 譟壱螳 螳ロ 殊 一危磯伎 襷 螳ロ 觜 襷襯 螻 螻螳 EAI 襭 螻螳 狩 一危磯ゼ 一危磯伎 譟壱蠍 EAI 襭朱 一危 覲旧襯 蟆曙, 覿 覲旧襯 蟇