{"id":2963,"date":"2021-03-08T01:59:31","date_gmt":"2021-03-08T09:59:31","guid":{"rendered":"https:\/\/www.gudusoft.com\/?page_id=2963"},"modified":"2026-07-11T23:44:30","modified_gmt":"2026-07-12T07:44:30","slug":"python-data-lineage","status":"publish","type":"page","link":"https:\/\/www.gudusoft.com\/jp\/python-%e3%83%87%e3%83%bc%e3%82%bf%e7%b3%bb%e7%b5%b1\/","title":{"rendered":"\u30c7\u30fc\u30bf\u7cfb\u7d71\u306e\u767a\u898b\u304c\u304b\u3064\u3066\u306a\u3044\u307b\u3069\u5bb9\u6613\u306b\u306a\u308a\u307e\u3057\u305f"},"content":{"rendered":"<h3>Python \u30c7\u30fc\u30bf \u30ea\u30cd\u30fc\u30b8 (Python \u7528 Gudu SQLFlow Lite \u30d0\u30fc\u30b8\u30e7\u30f3)<\/h3>\n<p>Python\u30c7\u30fc\u30bf\u7cfb\u7d71\u30d1\u30c3\u30b1\u30fc\u30b8\uff08\u5225\u540dGudu SQLFlow Lite\u7248Python\uff09\u306f\u3001\u3055\u307e\u3056\u307e\u306a\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306eSQL\u6587\u3068\u30b9\u30c8\u30a2\u30c9\u30d7\u30ed\u30b7\u30fc\u30b8\u30e3\u3092\u5206\u6790\u3057\u3066\u8907\u96d1\u306a\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308b\u30c4\u30fc\u30eb\u30bb\u30c3\u30c8\u3067\u3059\u3002 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Data_lineage\">\u30c7\u30fc\u30bf\u7cfb\u7d71<\/a>\u00a0 \u95a2\u4fc2\u6027\u3092\u7406\u89e3\u3057\u3001\u8996\u899a\u5316\u3057\u307e\u3059\u3002<\/p>\n<p><a href=\"https:\/\/github.com\/sqlparser\/python_data_lineage\" rel=\"nofollow\">Python \u7528 Gudu SQLFlow Lite \u30d0\u30fc\u30b8\u30e7\u30f3<\/a> Python\u958b\u767a\u8005\u306f\u3001\u30c7\u30fc\u30bf\u30ea\u30cd\u30fc\u30b8\u5206\u6790\u3068\u53ef\u8996\u5316\u6a5f\u80fd\u3092\u72ec\u81ea\u306ePython\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u8fc5\u901f\u306b\u7d71\u5408\u3067\u304d\u307e\u3059\u3002\u307e\u305f\u3001\u30c7\u30fc\u30bf\u30b5\u30a4\u30a8\u30f3\u30c6\u30a3\u30b9\u30c8\u306f\u3001\u5927\u898f\u6a21\u306a\u30c7\u30fc\u30bf\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3067ETL\u30b8\u30e7\u30d6\u306e\u30c7\u30fc\u30bf\u5909\u63db\u3092\u884c\u3046\u969b\u306b\u901a\u5e38\u4f7f\u7528\u3055\u308c\u308b\u8907\u96d1\u306aSQL\u30b9\u30af\u30ea\u30d7\u30c8\u304b\u3089\u3001\u30c7\u30fc\u30bf\u30ea\u30cd\u30fc\u30b8\u3092\u8fc5\u901f\u306b\u691c\u51fa\u3059\u308b\u305f\u3081\u306b\u3001\u65e5\u5e38\u696d\u52d9\u3067\u3082\u6d3b\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n<p>Gudu SQLFlow Lite\u7248\uff08Python\u7528\uff09\u306f\u975e\u5546\u7528\u5229\u7528\u306f\u7121\u6599\u3067\u3001\u6700\u592710K\u30d0\u30a4\u30c8\u306e\u8907\u96d1\u306aSQL\u6587\u3092\u51e6\u7406\u3067\u304d\u3001\u30b9\u30c8\u30a2\u30c9\u30d7\u30ed\u30b7\u30fc\u30b8\u30e3\u3082\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u3059\u3002Oracle\u3001DB2\u3001Snowflake\u3001Redshift\u3001Postgres\u306a\u3069\u300120\u793e\u4ee5\u4e0a\u306e\u4e3b\u8981\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d9\u30f3\u30c0\u30fc\u306eSQL\u65b9\u8a00\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>Python \u7528\u306e Gudu SQLFlow Lite \u30d0\u30fc\u30b8\u30e7\u30f3\u306b\u306f\u4ee5\u4e0b\u304c\u542b\u307e\u308c\u307e\u3059 <a href=\"https:\/\/www.gudusoft.com\/jp\/sqlflow-java-library-2\/\">Java\u30e9\u30a4\u30d6\u30e9\u30ea<\/a> \u8907\u96d1\u306aSQL\u6587\u3084\u30b9\u30c8\u30a2\u30c9\u30d7\u30ed\u30b7\u30fc\u30b8\u30e3\u3092\u5206\u6790\u3057\u3066\u30c7\u30fc\u30bf\u7cfb\u7d71\u95a2\u4fc2\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u3001 <a href=\"https:\/\/github.com\/sqlparser\/python_data_lineage\/blob\/main\/dlineage.py\">Python\u30d5\u30a1\u30a4\u30eb<\/a> jpype\u3092\u5229\u7528\u3057\u3066Java\u30e9\u30a4\u30d6\u30e9\u30ea\u306eAPI\u3092\u547c\u3073\u51fa\u3059\u3082\u306e\u3001\u305d\u3057\u3066 <a href=\"https:\/\/docs.gudusoft.com\/4.-sqlflow-widget\/get-started\">JavaScript\u30e9\u30a4\u30d6\u30e9\u30ea<\/a> \u30c7\u30fc\u30bf\u7cfb\u7d71\u95a2\u4fc2\u3092\u8996\u899a\u5316\u3057\u307e\u3059\u3002<\/p>\n<p>Gudu SQLFlow Lite\u306ePython\u7248\u3067\u306f\u3001\u30c6\u30fc\u30d6\u30eb\u3068\u5217\u306e\u5236\u7d04\u3001\u30c6\u30fc\u30d6\u30eb\u3068\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u95a2\u4fc2\u3082\u81ea\u52d5\u7684\u306b\u62bd\u51fa\u3067\u304d\u307e\u3059\u3002 <a href=\"https:\/\/docs.gudusoft.com\/6.-sqlflow-ingester\/introduction\">\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3055\u308c\u305fDDL\u30b9\u30af\u30ea\u30d7\u30c8 <\/a>ER \u56f3\u3092\u751f\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n\n<h3>\u30c7\u30fc\u30bf\u7cfb\u7d71\u3092\u81ea\u52d5\u7684\u306b\u8996\u899a\u5316\u3059\u308b<\/h3>\n\n\n\n<div>\u3053\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068:<\/div>\n<div><\/div>\n\n\n\n\n<pre class=\"wp-block-code\"><code>python dlineage.py \/t oracle \/f test.sql \/graph<\/code><\/pre>\n\n\n\n<p>\u6b21\u306e Oracle SQL \u6587\u306b\u542b\u307e\u308c\u308b\u30c7\u30fc\u30bf\u7cfb\u7d71\u95a2\u4fc2\u3092\u81ea\u52d5\u7684\u306b\u53d6\u5f97\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n\n<pre class=\"wp-block-code\"><code>CREATE VIEW vsal AS SELECT a.deptno &quot;\u90e8\u7f72&quot;, a.num_emp \/ b.total_count &quot;\u5f93\u696d\u54e1\u6570&quot;, a.sal_sum \/ b.total_sal &quot;\u7d66\u4e0e&quot; FROM (SELECT deptno, Count() num_emp, SUM(sal) sal_sum FROM scott.emp WHERE city = &#039;NYC&#039; GROUP BY deptno) a, (SELECT Count() total_count, SUM(sal) total_sal FROM scott.emp WHERE city = &#039;NYC&#039;) b ; INSERT ALL WHEN ottl &lt; 100000 THEN INTO small_orders VALUES(oid, ottl, sid, cid) WHEN ottl &gt; 100000 and ottl &lt; 200000 THEN INTO medium_orders VALUES(oid, ottl, sid, cid) WHEN ottl &gt; 200000 THEN INTO large_orders VALUES(oid, ottl, sid, cid) WHEN ottl &gt; 290000 THEN INTO special_orders SELECT o.order_id oid, o.customer_id cid, o.order_total ottl, o.sales_rep_id sid, c.credit_limit cl, c.cust_email cem FROM orders o, customers c WHERE o.customer_id = c.customer_id;<\/code><\/pre>\n\n\n\n<p>\u3053\u308c\u3092\u6b21\u306e\u3088\u3046\u306b\u8996\u899a\u5316\u3057\u307e\u3059\u3002<\/p>\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2024\/01\/oracle_data_lineage-1024x719.png\" alt=\"\" \/><\/figure>\n\n\n\n<h3>Python \u30c7\u30fc\u30bf\u7cfb\u7d71\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u6a5f\u80fd:<\/h3>\n\n\n\n<ul>\n<li>\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306a\u30c7\u30fc\u30bf\u7cfb\u7d71\u306e\u8996\u899a\u5316\u3092\u751f\u6210\u3059\u308b<\/li>\n\n\n<li>JSON\/CSV\/GRAPHML\u3067\u30c7\u30fc\u30bf\u7cfb\u7d71\u3092\u4f5c\u6210\u3059\u308b<\/li>\n\n\n<li>20 \u3092\u8d85\u3048\u308b\u4e3b\u8981\u306a\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9 \u30d9\u30f3\u30c0\u30fc\u306e SQL \u3092\u30b5\u30dd\u30fc\u30c8<\/li>\n\n<\/ul>\n\n\n\n<h2 style=\"text-align: center;\">Python \u30c7\u30fc\u30bf\u7cfb\u7d71\u30c4\u30fc\u30eb\u306e\u4ed5\u7d44\u307f<\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.gudusoft.com\/wp-content\/uploads\/2021\/03\/python-data-lineage-overview-e1615281779694.png\" alt=\"\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\u73fe\u5728\u3001\u4e0a\u8a18\u306e\u3059\u3079\u3066\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f github \u4e0a\u306e\u5358\u4e00\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u306b\u30d1\u30c3\u30b1\u30fc\u30b8\u5316\u3055\u308c\u3066\u304a\u308a\u3001\u30af\u30ed\u30fc\u30f3\u3059\u308b\u3060\u3051\u3067\u7121\u6599\u3067\u5165\u624b\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n\n<pre class=\"wp-block-code\"><code>git clone https:\/\/github.com\/sqlparser\/python_data_lineage.git<\/code><\/pre>\n\n\n\n<p>\u2013 \u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u63a5\u7d9a\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\u3002<br \/>\n\u2013 \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u63a5\u7d9a\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\n<p>\u3053\u306e Python \u30c7\u30fc\u30bf \u30ea\u30cd\u30fc\u30b8 \u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30ed\u30fc\u30ab\u30eb\u3067\u5b9f\u884c\u3059\u308b\u306b\u306f\u3001JDK \u3068 Python \u30a4\u30f3\u30bf\u30fc\u30d7\u30ea\u30bf\u30fc\u3060\u3051\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/github.com\/sqlparser\/python_data_lineage\">\u4eca\u3059\u3050github\u30ea\u30dd\u30b8\u30c8\u30ea\u3078\u30a2\u30af\u30bb\u30b9<\/a><\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Python Data Lineage (Gudu SQLFlow Lite version for python) Python data lineage package (aka Gudu SQLFlow Lite version for python) is a tool set used to analyze SQL statements and stored procedures of various databases to obtain complex data lineage\u00a0 relationships and visualize them. Gudu SQLFlow Lite version for python allows Python developers to quickly integrate data lineage analysis and visualization capabilities into their own Python applications. It can also be used in daily work by data scientists to quickly discover data lineage from complex SQL scripts that usually used in ETL jobs do the data transform in a huge\u2026<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":5}},"_links":{"self":[{"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/pages\/2963"}],"collection":[{"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/comments?post=2963"}],"version-history":[{"count":45,"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/pages\/2963\/revisions"}],"predecessor-version":[{"id":6663,"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/pages\/2963\/revisions\/6663"}],"wp:attachment":[{"href":"https:\/\/www.gudusoft.com\/jp\/wp-json\/wp\/v2\/media?parent=2963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}