SilverStreamingApplication 1.0__tar.gz → 1.1__tar.gz
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.
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/PKG-INFO +1 -1
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/PKG-INFO +1 -1
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/WorkflowBuilder.py +15 -4
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/setup.py +1 -1
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/SOURCES.txt +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/dependency_links.txt +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/top_level.txt +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/__init__.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/__init__.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/Maintenance.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/Operations.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/PartitionAnalyzer.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/PerfAnalyzer.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/SilverMerge.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/__init__.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/logging.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/sparksession.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/utils.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/utilsDatabricksAPI.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/OperationsTest.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/__init__.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/main_test.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/utils_test.py +0 -0
- {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/setup.cfg +0 -0
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/WorkflowBuilder.py
RENAMED
|
@@ -25,7 +25,7 @@ class WorkflowBuilder:
|
|
|
25
25
|
|
|
26
26
|
"""
|
|
27
27
|
|
|
28
|
-
def __init__(self, inputDict: OrderedDict, onFailureEmailList: list):
|
|
28
|
+
def __init__(self, inputDict: OrderedDict, onFailureEmailList: list, library: str):
|
|
29
29
|
""""
|
|
30
30
|
desc:
|
|
31
31
|
Initialize the required variables for the class
|
|
@@ -34,6 +34,7 @@ class WorkflowBuilder:
|
|
|
34
34
|
inputDict: inputDict - A single ordered dictionary containing all the possible configurations
|
|
35
35
|
for building the JSON in the databricks jobs API format
|
|
36
36
|
onFailureEmailList: List of string - A list of emails to be notified when a job failed
|
|
37
|
+
library: string - PyPI library name with version number
|
|
37
38
|
|
|
38
39
|
example:
|
|
39
40
|
# Sample data for inputDict argument:
|
|
@@ -60,16 +61,18 @@ class WorkflowBuilder:
|
|
|
60
61
|
('driver_type', ['Standard_E8ds_v4', 'Standard_E8ds_v4']),
|
|
61
62
|
('worker_type', ['Standard_E8ds_v4', 'Standard_E8ds_v4']),
|
|
62
63
|
('num_workers', ['4', '4'])])
|
|
64
|
+
# example of library argument: "SilverStreamingApplication==1.0"
|
|
63
65
|
|
|
64
66
|
|
|
65
67
|
"""
|
|
66
68
|
self.inputDict = inputDict
|
|
67
69
|
self.onFailureEmailList = onFailureEmailList
|
|
70
|
+
self.library = library
|
|
68
71
|
|
|
69
72
|
@staticmethod
|
|
70
73
|
def createTask(taskKey, jobClusterKey, notebookPath, srcDatabaseName, srcTableName, tgtDatabaseName, tgtTableName,
|
|
71
74
|
tgtCheckpoint, tgtTablePath, tgtPartitionColumns, derivedColExpr, triggerOnce, dropColumnStr,
|
|
72
|
-
pruneColumn, pythonWhlPath):
|
|
75
|
+
pruneColumn, pythonWhlPath, library):
|
|
73
76
|
"""
|
|
74
77
|
desc:
|
|
75
78
|
A method for creating the dict/json for a single task
|
|
@@ -90,6 +93,7 @@ class WorkflowBuilder:
|
|
|
90
93
|
dropColumnStr: String - Columns to be dropped from source table df
|
|
91
94
|
pruneColumn: String - Column for applying the prune filter in the merge ON condition clause \
|
|
92
95
|
(to improve performance of the merge)
|
|
96
|
+
library: String - Library to be installed for the job (with version number)
|
|
93
97
|
|
|
94
98
|
return:
|
|
95
99
|
silverCleansedDF: dict - returns the task in jobs API format as a dictionary
|
|
@@ -132,7 +136,14 @@ class WorkflowBuilder:
|
|
|
132
136
|
"timeout_seconds": timeout_seconds,
|
|
133
137
|
"max_retries": max_retries,
|
|
134
138
|
"min_retry_interval_millis": 900000,
|
|
135
|
-
"retry_on_timeout": "false"
|
|
139
|
+
"retry_on_timeout": "false",
|
|
140
|
+
"libraries": [
|
|
141
|
+
{
|
|
142
|
+
"pypi": {
|
|
143
|
+
"package": library
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
]
|
|
136
147
|
}
|
|
137
148
|
|
|
138
149
|
return taskDict
|
|
@@ -319,7 +330,7 @@ class WorkflowBuilder:
|
|
|
319
330
|
taskTemp = self.createTask(taskKey, jobClusterKey, notebookPath, srcDatabaseName, srcTableName,
|
|
320
331
|
tgtDatabaseName, tgtTableName, tgtCheckpoint, tgtTablePath,
|
|
321
332
|
tgtPartitionColumns, derivedColExpr, triggerOnce, dropColumnStr,
|
|
322
|
-
pruneColumn, "")
|
|
333
|
+
pruneColumn, "", self.library)
|
|
323
334
|
|
|
324
335
|
tasks.append(taskTemp)
|
|
325
336
|
if jobId is None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/Maintenance.py
RENAMED
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/Operations.py
RENAMED
|
File without changes
|
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/PerfAnalyzer.py
RENAMED
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/SilverMerge.py
RENAMED
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/sparksession.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/OperationsTest.py
RENAMED
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/__init__.py
RENAMED
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/main_test.py
RENAMED
|
File without changes
|
{SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/utils_test.py
RENAMED
|
File without changes
|
|
File without changes
|