quollio-core 0.4.10__py3-none-any.whl → 0.4.11__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
quollio_core/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
1
  """Quollio Core"""
2
2
 
3
- __version__ = "0.4.10"
3
+ __version__ = "0.4.11"
4
4
  __author__ = "Quollio Technologies, Inc"
@@ -138,42 +138,47 @@ def _get_column_stats(
138
138
  raise ValueError(f"Invalid table name: {table['table_fqdn']}")
139
139
  with databricks.DatabricksQueryExecutor(config=conn) as databricks_executor:
140
140
  query = """
141
- SELECT
142
- "{monitored_table_catalog}" as DB_NAME,
143
- "{monitored_table_schema}" as SCHEMA_NAME,
144
- "{monitored_table_name}" as TABLE_NAME,
145
- t.COLUMN_NAME,
146
- t.DATA_TYPE,
147
- t.distinct_count as CARDINALITY,
148
- t.MAX as MAX_VALUE,
149
- t.MIN as MIN_VALUE,
150
- t.AVG as AVG_VALUE,
151
- t.MEDIAN as MEDIAN_VALUE,
152
- t.STDDEV as STDDEV_VALUE,
153
- t.NUM_NULLS as NULL_COUNT,
154
- t.frequent_items[0].item AS MODE_VALUE,
155
- MAX(t.window) AS LATEST
156
- FROM
157
- {monitoring_table} t
158
- WHERE
159
- t.column_name not in (':table')
160
- GROUP BY
161
- t.COLUMN_NAME,
162
- t.DATA_TYPE,
163
- t.distinct_count,
164
- t.MAX,
165
- t.MIN,
166
- t.AVG,
167
- t.MEDIAN,
168
- t.STDDEV,
169
- t.NUM_NULLS,
170
- t.frequent_items
141
+ WITH profile_record_history AS (
142
+ SELECT
143
+ COLUMN_NAME
144
+ , distinct_count as CARDINALITY
145
+ , MAX as MAX_VALUE
146
+ , MIN as MIN_VALUE
147
+ , AVG as AVG_VALUE
148
+ , MEDIAN as MEDIAN_VALUE
149
+ , STDDEV as STDDEV_VALUE
150
+ , NUM_NULLS as NULL_COUNT
151
+ , frequent_items[0].item AS MODE_VALUE
152
+ , row_number() over(partition by column_name order by window desc) rownum
153
+ FROM
154
+ {monitoring_table}
155
+ WHERE
156
+ column_name not in (':table')
157
+ )
158
+ SELECT
159
+ "{monitored_table_catalog}" as DB_NAME
160
+ , "{monitored_table_schema}" as SCHEMA_NAME
161
+ , "{monitored_table_name}" as TABLE_NAME
162
+ , COLUMN_NAME
163
+ , CARDINALITY
164
+ , MAX_VALUE
165
+ , MIN_VALUE
166
+ , AVG_VALUE
167
+ , MEDIAN_VALUE
168
+ , STDDEV_VALUE
169
+ , NULL_COUNT
170
+ , MODE_VALUE
171
+ FROM
172
+ profile_record_history
173
+ WHERE
174
+ rownum = 1
171
175
  """.format(
172
176
  monitoring_table=table["table_fqdn"],
173
177
  monitored_table_catalog=monitored_table[0],
174
178
  monitored_table_schema=monitored_table[1],
175
179
  monitored_table_name=monitored_table[2],
176
180
  )
181
+ logger.debug(f"The following sql will be fetched to retrieve stats values. {query}")
177
182
  stats.append(databricks_executor.get_query_results(query))
178
183
  return stats
179
184
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: quollio-core
3
- Version: 0.4.10
3
+ Version: 0.4.11
4
4
  Summary: Quollio Core
5
5
  Author-email: quollio-dev <qt.dev@quollio.com>
6
6
  Maintainer-email: RyoAriyama <ryo.arym@gmail.com>, tharuta <35373297+TakumiHaruta@users.noreply.github.com>
@@ -1,4 +1,4 @@
1
- quollio_core/__init__.py,sha256=MhFw5RS_znNS5UBo8a0yTwpAdCcNqqmg_G1rdQ4mDLE,84
1
+ quollio_core/__init__.py,sha256=_jIDStu07dkGu5ouTAUr-ImjBx7pmvosgMOUjUT25Pc,84
2
2
  quollio_core/bigquery.py,sha256=RguUznaY5YjROzJtXimoS8yCNH9jgGphpzd5v_JgSQM,3884
3
3
  quollio_core/bricks.py,sha256=Lehv-qsBSMNNE9BGVvidGOXJsxLSSsbNtmiEZH4lSUg,9458
4
4
  quollio_core/redshift.py,sha256=1d-mHnalB1jtiGPgzsGd3lRwLHCxaBJlUMEV2dh4f60,9882
@@ -67,7 +67,7 @@ quollio_core/helper/env_default.py,sha256=H6gbSGUPrEDZr4YDrL49hbOpw6RntI4U82kX1q
67
67
  quollio_core/helper/log.py,sha256=flxyZZ44G79l1TaUp3OT58uCHcnE5z_pCduwoeI6IUs,645
68
68
  quollio_core/profilers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
69
69
  quollio_core/profilers/bigquery.py,sha256=e1Y8cZR-LxI9mSsYb0DurQyy0eCjM_kAKLfvl4IuQLE,3262
70
- quollio_core/profilers/databricks.py,sha256=DkT7cLl7XvAfZ_vkgiiXIt6yoKpov4MAbgpzq-i1m1g,7282
70
+ quollio_core/profilers/databricks.py,sha256=pFWV6ecTefOS8evbnnXTcqR1jmbLsqn1V89ISyM2uqU,7743
71
71
  quollio_core/profilers/lineage.py,sha256=4FyxIuPBrUFihqZryqTQBcfB0Z7634lKl_WwkD82vzE,6865
72
72
  quollio_core/profilers/redshift.py,sha256=6_4amsBL4QW0ZajWhS-TW3f_cjKKa6TpXClMgBC-fZo,6440
73
73
  quollio_core/profilers/snowflake.py,sha256=nitlP5pmDm2RhLGO4f_WTzkw41EmOTY2uWN1HZkCHbI,8465
@@ -80,7 +80,7 @@ quollio_core/repository/dbt.py,sha256=cnLwJPywLi8VowVW7zfIBa9jxVwDWO7xzzNRn1vWiu
80
80
  quollio_core/repository/qdc.py,sha256=qEpMF6rKdic23dPJoDYmbIcyCKDuSFqbDF2_jqmqoZw,4369
81
81
  quollio_core/repository/redshift.py,sha256=p2ouEuYcDCjx1oBhc6H1ekQsvEqHGd3bFu3PW0ngYBc,2880
82
82
  quollio_core/repository/snowflake.py,sha256=J9rHshfWdOSnjQWxwGEYPpAU2lY7Tu5UFB_BNakkAX0,1892
83
- quollio_core-0.4.10.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
84
- quollio_core-0.4.10.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
85
- quollio_core-0.4.10.dist-info/METADATA,sha256=QeostnBm-yqx48bVtcEaB6C-zIy9dCFwkVnm4sDIhlA,6804
86
- quollio_core-0.4.10.dist-info/RECORD,,
83
+ quollio_core-0.4.11.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
84
+ quollio_core-0.4.11.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
85
+ quollio_core-0.4.11.dist-info/METADATA,sha256=0tv9AKZYWKt9yPa9iaziHZyTzhj708v-Aq22MFEbYAs,6804
86
+ quollio_core-0.4.11.dist-info/RECORD,,