code: func (m *Main) Run() error {
  	if m.Seed == -1 {
  		m.Seed = time.Now().UnixNano()
  	}
  
  	schema := gopilosa.NewSchema()
  	idx := schema.Index(m.Index)
  	idx.Field(m.Field, gopilosa.OptFieldTypeSet(gopilosa.CacheTypeRanked, 50000))
  	indexer, err := pdk.SetupPilosa(m.PilosaHosts, m.Index, schema, m.BatchSize)
  	if err != nil {
  		return errors.Wrap(err, "setting up Pilosa")
  	}
  
  	ug := newUserGetter(m.Seed)
  
  	for i := uint64(0); i < m.Num; i++ {
  		indexer.AddColumn(m.Field, i, ug.ID())
  	}
  
  	return errors.Wrap(indexer.Close(), "closing indexer")
  }
docs: // Run begins generating data and ingesting it to Pilosa.