mirror of
				https://github.com/open-metadata/OpenMetadata.git
				synced 2025-11-04 12:36:23 +00:00 
			
		
		
		
	Added Users to TableQueries (#2826)
* Added Users to TableQueries * User EntityReference * User EntityReference modification
This commit is contained in:
		
							parent
							
								
									a9446e0209
								
							
						
					
					
						commit
						c79f1f286d
					
				@ -13,6 +13,7 @@ import csv
 | 
				
			|||||||
import json
 | 
					import json
 | 
				
			||||||
import logging
 | 
					import logging
 | 
				
			||||||
import os
 | 
					import os
 | 
				
			||||||
 | 
					import random
 | 
				
			||||||
import uuid
 | 
					import uuid
 | 
				
			||||||
from collections import namedtuple
 | 
					from collections import namedtuple
 | 
				
			||||||
from dataclasses import dataclass, field
 | 
					from dataclasses import dataclass, field
 | 
				
			||||||
@ -34,6 +35,7 @@ from metadata.generated.schema.entity.data.table import Table
 | 
				
			|||||||
from metadata.generated.schema.entity.services.databaseService import (
 | 
					from metadata.generated.schema.entity.services.databaseService import (
 | 
				
			||||||
    DatabaseServiceType,
 | 
					    DatabaseServiceType,
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					from metadata.generated.schema.entity.teams.user import User
 | 
				
			||||||
from metadata.generated.schema.type.entityLineage import EntitiesEdge
 | 
					from metadata.generated.schema.type.entityLineage import EntitiesEdge
 | 
				
			||||||
from metadata.generated.schema.type.entityReference import EntityReference
 | 
					from metadata.generated.schema.type.entityReference import EntityReference
 | 
				
			||||||
from metadata.ingestion.api.common import Entity
 | 
					from metadata.ingestion.api.common import Entity
 | 
				
			||||||
@ -265,6 +267,7 @@ class SampleDataSource(Source[Entity]):
 | 
				
			|||||||
        self.models = json.load(
 | 
					        self.models = json.load(
 | 
				
			||||||
            open(self.config.sample_data_folder + "/models/models.json", "r")
 | 
					            open(self.config.sample_data_folder + "/models/models.json", "r")
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					        self.user_entity = {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @classmethod
 | 
					    @classmethod
 | 
				
			||||||
    def create(cls, config_dict, metadata_config_dict, ctx):
 | 
					    def create(cls, config_dict, metadata_config_dict, ctx):
 | 
				
			||||||
@ -276,6 +279,7 @@ class SampleDataSource(Source[Entity]):
 | 
				
			|||||||
        pass
 | 
					        pass
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def next_record(self) -> Iterable[Entity]:
 | 
					    def next_record(self) -> Iterable[Entity]:
 | 
				
			||||||
 | 
					        yield from self.ingest_users()
 | 
				
			||||||
        yield from self.ingest_locations()
 | 
					        yield from self.ingest_locations()
 | 
				
			||||||
        yield from self.ingest_glue()
 | 
					        yield from self.ingest_glue()
 | 
				
			||||||
        yield from self.ingest_tables()
 | 
					        yield from self.ingest_tables()
 | 
				
			||||||
@ -284,7 +288,6 @@ class SampleDataSource(Source[Entity]):
 | 
				
			|||||||
        yield from self.ingest_dashboards()
 | 
					        yield from self.ingest_dashboards()
 | 
				
			||||||
        yield from self.ingest_pipelines()
 | 
					        yield from self.ingest_pipelines()
 | 
				
			||||||
        yield from self.ingest_lineage()
 | 
					        yield from self.ingest_lineage()
 | 
				
			||||||
        yield from self.ingest_users()
 | 
					 | 
				
			||||||
        yield from self.ingest_mlmodels()
 | 
					        yield from self.ingest_mlmodels()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def ingest_locations(self) -> Iterable[Location]:
 | 
					    def ingest_locations(self) -> Iterable[Location]:
 | 
				
			||||||
@ -338,7 +341,19 @@ class SampleDataSource(Source[Entity]):
 | 
				
			|||||||
                id=self.database_service.id, type=self.config.service_type
 | 
					                id=self.database_service.id, type=self.config.service_type
 | 
				
			||||||
            ),
 | 
					            ),
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					        resp = self.metadata.list_entities(entity=User, limit=5)
 | 
				
			||||||
 | 
					        self.user_entity = resp.entities
 | 
				
			||||||
        for table in self.tables["tables"]:
 | 
					        for table in self.tables["tables"]:
 | 
				
			||||||
 | 
					            for sql_object in table["tableQueries"]:
 | 
				
			||||||
 | 
					                user_entity = self.user_entity[random.choice(range(5))]
 | 
				
			||||||
 | 
					                user_dict = {
 | 
				
			||||||
 | 
					                    "id": user_entity.id,
 | 
				
			||||||
 | 
					                    "name": user_entity.name.__root__,
 | 
				
			||||||
 | 
					                    "displayName": user_entity.displayName,
 | 
				
			||||||
 | 
					                    "href": user_entity.href,
 | 
				
			||||||
 | 
					                    "description": user_entity.description,
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                sql_object["user"] = EntityReference(**user_dict, type="user")
 | 
				
			||||||
            table_metadata = Table(**table)
 | 
					            table_metadata = Table(**table)
 | 
				
			||||||
            table_and_db = OMetaDatabaseAndTable(table=table_metadata, database=db)
 | 
					            table_and_db = OMetaDatabaseAndTable(table=table_metadata, database=db)
 | 
				
			||||||
            self.status.scanned("table", table_metadata.name.__root__)
 | 
					            self.status.scanned("table", table_metadata.name.__root__)
 | 
				
			||||||
 | 
				
			|||||||
@ -70,6 +70,7 @@ class ColumnTypeParser:
 | 
				
			|||||||
        "DOUBLE PRECISION": "DOUBLE",
 | 
					        "DOUBLE PRECISION": "DOUBLE",
 | 
				
			||||||
        "DOUBLE": "DOUBLE",
 | 
					        "DOUBLE": "DOUBLE",
 | 
				
			||||||
        "ENUM": "ENUM",
 | 
					        "ENUM": "ENUM",
 | 
				
			||||||
 | 
					        "FLOAT": "FLOAT",
 | 
				
			||||||
        "FLOAT4": "FLOAT",
 | 
					        "FLOAT4": "FLOAT",
 | 
				
			||||||
        "FLOAT64": "DOUBLE",
 | 
					        "FLOAT64": "DOUBLE",
 | 
				
			||||||
        "FLOAT8": "DOUBLE",
 | 
					        "FLOAT8": "DOUBLE",
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user