Пример #1
0
        static void PrintExternalIndexStats()
        {
            var serializer = new ExternalIndexSerializer <int>();

            using var index = serializer.Deserialize(externalIndexPath);

            Console.WriteLine($"The: {index.Search(TextHasher.CalculateHashCode("the".AsSpan())).Count()}");
        }
Пример #2
0
        static void BuildExternalIndex()
        {
            PrepareOutputDirectory(externalIndexPath);

            var reader = new CorpusZipReader <IList <char> >(wikiPath, charDataSerializer);

            using var buildableIndex = new BlockedExternalBuildableIndex <int>(
                      DictonaryBasedExternalBuildableIndex <int> .GetCreateMethodWithVarintPostingsLists(),
                      externalIndexPath,
                      BlockSize);
            var indexBuilder = new IndexBuilder <int, IEnumerable <int> >(buildableIndex);
            var processor    = new WikitextProcessor();

            indexBuilder.IndexCorpus(processor.Transform(reader.Read()));

            using var index = buildableIndex.Build();

            var serializer = new ExternalIndexSerializer <int>();

            serializer.Serialize(externalIndexPath, index);
        }
Пример #3
0
        private ISearchableIndex <int> LoadExternalIndex()
        {
            var serializer = new ExternalIndexSerializer <int>();

            return(serializer.Deserialize(externalIndexPath));
        }