string file = @"c:\temp\test.parquet";
var dataFields = new DataField[2];
dataFields[0] = new DataField("dtUTC", DataType.Int64);
dataFields[1] = new DataField("val", DataType.Double);
var schema = new ParquetSchema(dataFields);
var dtUTC = new long[3];
var val = new double[3];
using (Stream fileStream = System.IO.File.OpenWrite(file))
{
using (var parquetWriterTask = ParquetWriter.CreateAsync(schema, fileStream))
{
parquetWriterTask.Wait();
var parquetWriter = parquetWriterTask.Result;
using (ParquetRowGroupWriter groupWriter = parquetWriter.CreateRowGroup())
{
var col0 = Array.CreateInstance(typeof(long), dtUTC.Length);
for(int i=0;i< dtUTC.Length;i++) col0.SetValue(dtUTC[i], i);
var writeT = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[0], col0));
writeT.Wait();
var col1 = Array.CreateInstance(typeof(double), val.Length);
for (int i = 0; i < val.Length; i++) col1.SetValue(val[i], i);
var writeT2 = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[1], col1));
writeT2.Wait();
}
}
}
< /code>
Wenn ich jedoch versuche, diese Datei zu lesen, entweder mit einer Drittanbieter -Anwendung oder meinem unten gezeigten Code, erhalte ich Fehler in der Zeile von < /p>
Das Ziel ist zu kurz. Der Stream < /p>
< /blockquote>
(abhängig davon, welche Anwendung ich zum Lesen der Datei verwendet) < /p>
Der Code, den ich zum Lesen verwenden, ist: < /p>
using (Stream file = System.IO.File.OpenRead(fileName))
{
using (var readerTask = ParquetReader.CreateAsync(file))
{
readerTask.Wait();
var reader = readerTask.Result;
if (reader.RowGroupCount != 1) throw new Exception("reader.RowGroupCount = " + reader.RowGroupCount);
var dataFields = reader.Schema.GetDataFields();
using (var gr = reader.OpenRowGroupReader(0))
{
Parquet.Data.DataColumn[] columns = parquet.getCols(gr, dataFields);// dataFields.Select(gr.ReadColumn).ToArray();
output($"\tGroup 0: columns.Length={columns.Length}");
}
}
}
Was mache ich beim Schreiben dieser Parquetendatei falsch?
Ich habe kürzlich Parquet.net auf Version 4.6.0 aktualisiert, was eine Menge der Methodenanrufe zu ihren asynchronen Versionen erfordert.[code] string file = @"c:\temp\test.parquet"; var dataFields = new DataField[2]; dataFields[0] = new DataField("dtUTC", DataType.Int64); dataFields[1] = new DataField("val", DataType.Double); var schema = new ParquetSchema(dataFields); var dtUTC = new long[3]; var val = new double[3];
using (Stream fileStream = System.IO.File.OpenWrite(file)) { using (var parquetWriterTask = ParquetWriter.CreateAsync(schema, fileStream)) { parquetWriterTask.Wait(); var parquetWriter = parquetWriterTask.Result; using (ParquetRowGroupWriter groupWriter = parquetWriter.CreateRowGroup()) { var col0 = Array.CreateInstance(typeof(long), dtUTC.Length); for(int i=0;i< dtUTC.Length;i++) col0.SetValue(dtUTC[i], i); var writeT = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[0], col0)); writeT.Wait(); var col1 = Array.CreateInstance(typeof(double), val.Length); for (int i = 0; i < val.Length; i++) col1.SetValue(val[i], i); var writeT2 = groupWriter.WriteColumnAsync(new Parquet.Data.DataColumn(dataFields[1], col1)); writeT2.Wait(); } } } < /code> Wenn ich jedoch versuche, diese Datei zu lesen, entweder mit einer Drittanbieter -Anwendung oder meinem unten gezeigten Code, erhalte ich Fehler in der Zeile von < /p>
Das Ziel ist zu kurz. Der Stream < /p> < /blockquote> (abhängig davon, welche Anwendung ich zum Lesen der Datei verwendet) < /p> Der Code, den ich zum Lesen verwenden, ist: < /p> using (Stream file = System.IO.File.OpenRead(fileName)) { using (var readerTask = ParquetReader.CreateAsync(file)) { readerTask.Wait(); var reader = readerTask.Result; if (reader.RowGroupCount != 1) throw new Exception("reader.RowGroupCount = " + reader.RowGroupCount); var dataFields = reader.Schema.GetDataFields(); using (var gr = reader.OpenRowGroupReader(0)) { Parquet.Data.DataColumn[] columns = parquet.getCols(gr, dataFields);// dataFields.Select(gr.ReadColumn).ToArray(); output($"\tGroup 0: columns.Length={columns.Length}"); } } } [/code] Was mache ich beim Schreiben dieser Parquetendatei falsch?
Ziel:
Rendern Sie die geeignete Schriftstärke für die Schriftfamilie Proxima Nova in Firefox und (Headless)Chrome unter macOS für lokale visuelle Vergleichstests der Webseite.
/> Info:
Ich habe eine mittelgroße Anwendung mit einer Tabelle und eine Funktion der Tabelle ist die Möglichkeit, auf eine Schaltfläche zu klicken, die eine Ansicht dieser Zeile in Form eines Muddialogs...
Ich habe eine C#-Anwendung (.NET Core 4) und habe den folgenden LINQ-Ausdruck geschrieben, um eine Liste der zugewiesenen Tickets aus der Datenbankansicht abzurufen.
public async Task...
Ich möchte nicht blockierende Anwendungen schreiben. Ich verwende Apache2, habe aber über Nginx und seine Vorteile in Bezug auf Apache-Prozesse gelesen. Ich denke darüber nach, Apache gegen Nginx...