public WriteSession( ulong collectionId, LocalStorageSessionFactory sessionFactory, ITokenizer tokenizer) : base(collectionId, sessionFactory) { _tokenizer = tokenizer; _log = Logging.CreateLogWriter("writesession"); _indexQueue = new ProducerConsumerQueue <IndexJob>(Write); _buildQueue = new ProducerConsumerQueue <BuildJob>(Write); ValueStream = sessionFactory.CreateAppendStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.val", collectionId))); KeyStream = sessionFactory.CreateAppendStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.key", collectionId))); DocStream = sessionFactory.CreateAppendStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.docs", collectionId))); ValueIndexStream = sessionFactory.CreateAppendStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.vix", collectionId))); KeyIndexStream = sessionFactory.CreateAppendStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.kix", collectionId))); DocIndexStream = sessionFactory.CreateAppendStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.dix", collectionId))); PostingsStream = sessionFactory.CreateReadWriteStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.pos", collectionId))); VectorStream = sessionFactory.CreateAppendStream(Path.Combine(sessionFactory.Dir, string.Format("{0}.vec", collectionId))); Index = sessionFactory.GetCollectionIndex(collectionId); _vals = new ValueWriter(ValueStream); _keys = new ValueWriter(KeyStream); _docs = new DocWriter(DocStream); _valIx = new ValueIndexWriter(ValueIndexStream); _keyIx = new ValueIndexWriter(KeyIndexStream); _docIx = new DocIndexWriter(DocIndexStream); _postingsReader = new PagedPostingsReader(PostingsStream); _dirty = new Dictionary <long, VectorNode>(); }
public Writer(LocalStorageSessionFactory sessionFactory, ITokenizer analyzer) { _tokenizer = analyzer; _sessionFactory = sessionFactory; _writeQueue = new ProducerConsumerQueue <WriteJob>(ExecuteWrite); _log = Logging.CreateLogWriter("writer"); _itemTimer = new Stopwatch(); _batchTimer = new Stopwatch(); }
public WarmupSession( string collectionName, ulong collectionId, SessionFactory sessionFactory, IStringModel tokenizer, IConfigurationProvider config, string baseUrl) : base(collectionName, collectionId, sessionFactory) { _config = config; _tokenizer = tokenizer; _httpQueue = new ProducerConsumerQueue <string>( int.Parse(_config.Get("warmup_thread_count")), callback: SubmitQuery); _http = new HttpClient(); _baseUrl = baseUrl; this.Log("initiated warmup session"); }
public Writer(SessionFactory sessionFactory, ITokenizer analyzer) { _tokenizer = analyzer; _sessionFactory = sessionFactory; _writeQueue = new ProducerConsumerQueue <WriteTransaction>(Commit); }
public Writer(LocalStorageSessionFactory sessionFactory, ITokenizer analyzer) { _tokenizer = analyzer; _sessionFactory = sessionFactory; _writeQueue = new ProducerConsumerQueue <WriteJob>(Commit); }