Слоты Hive
:ref:Slots <slot-decorator> that could be implemented by third-party plugins.
.. versionadded:: 0.7.0
Source code in onetl/connection/db_connection/hive/slots.py
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | |
normalize_cluster_name(cluster)
staticmethod
Normalize cluster name passed into Hive constructor. |support_hooks|
If hooks didn't return anything, cluster name is left intact.
.. versionadded:: 0.7.0
Parameters
cluster : :obj:str
Cluster name (raw)
Returns
str | None Normalized cluster name.
If hook cannot be applied to a specific cluster, it should return ``None``.
Examples
.. code:: python
from onetl.connection import Hive
from onetl.hooks import hook
@Hive.Slots.normalize_cluster_name.bind
@hook
def normalize_cluster_name(cluster: str) -> str:
return cluster.lower()
Source code in onetl/connection/db_connection/hive/slots.py
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | |
get_known_clusters()
staticmethod
Return collection of known clusters. |support_hooks|
Cluster passed into Hive constructor should be present in this list. If hooks didn't return anything, no validation will be performed.
.. versionadded:: 0.7.0
Returns
set[str] | None Collection of cluster names (normalized).
If hook cannot be applied, it should return ``None``.
Examples
.. code:: python
from onetl.connection import Hive
from onetl.hooks import hook
@Hive.Slots.get_known_clusters.bind
@hook
def get_known_clusters() -> str[str]:
return {"rnd-dwh", "rnd-prod"}
Source code in onetl/connection/db_connection/hive/slots.py
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | |
get_current_cluster()
staticmethod
Get current cluster name. |support_hooks|
Used in :obj:~check method to verify that connection is created only from the same cluster.
If hooks didn't return anything, no validation will be performed.
.. versionadded:: 0.7.0
Returns
str | None Current cluster name (normalized).
If hook cannot be applied, it should return ``None``.
Examples
.. code:: python
from onetl.connection import Hive
from onetl.hooks import hook
@Hive.Slots.get_current_cluster.bind
@hook
def get_current_cluster() -> str:
# some magic here
return "rnd-dwh"
Source code in onetl/connection/db_connection/hive/slots.py
85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | |