def _LazyInit(self):
    if self._data_set:
      return
    self._data_set = True

    if self._name:
      db = self._dbh.Escape(self._name)
    else:
      db = 'DATABASE()'
    rows = self._dbh.ExecuteWithRetry(
        'SELECT TABLE_NAME, '
        'SUBSTRING_INDEX(table_collation, \'_\', 1) AS CHARSET '
        'FROM INFORMATION_SCHEMA.TABLES WHERE '
        'TABLE_SCHEMA=%s' % db)
    for row in rows:
      self.AddTable(row['TABLE_NAME'], new_table=False,
                    char_set=row['CHARSET'])
Create a DataGroup for the data, with a label and associated attributes.
dataset/ETHPy150Open google/mysql-tools/pylib/schema.py/Database._LazyInit--crossover with--dataset/ETHPy150Open bokeh/bokeh/bokeh/charts/data_source.py/DataGroup.__init__