เชกเซ‡เชŸเชพเชฌเซ‡เช เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชธเชชเซ‹เชฐเซเชŸ เชธเชพเชฅเซ‡ เชกเช•เชกเซ€เชฌเซ€ เซง.เซช.เซฆ เชฐเชฟเชฒเซ€เช

DuckDB 1.4.0, เชเช• DBMS เชœเซ‡ เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชพเชคเซเชฎเช• เชชเซเชฐเชถเซเชจเซ‹ เช•เชฐเชตเชพ เชชเชฐ เช•เซ‡เชจเซเชฆเซเชฐเชฟเชค เช›เซ‡ เช…เชจเซ‡ SQLite เชจเซ€ เช•เชฒเซเชชเชจเชพเชคเซเชฎเช• เชฐเซ€เชคเซ‡ เชฏเชพเชฆ เช…เชชเชพเชตเซ‡ เช›เซ‡, เชคเซ‡ เชชเซเชฐเช•เชพเชถเชฟเชค เชฅเชฏเซเช‚ เช›เซ‡. เชกเช•เชกเซ€เชฌเซ€ SQLite เชจเชพ เช•เซ‹เชฎเซเชชเซ‡เช•เซเชŸ เช•เชฆ, เชชเซเชฒเช—เซ‡เชฌเชฒ เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€, เชธเชฟเช‚เช—เชฒ-เชซเชพเช‡เชฒ เชกเซ‡เชŸเชพเชฌเซ‡เช เชธเซเชŸเซ‹เชฐเซ‡เชœ เช…เชจเซ‡ CLI เช‡เชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‡ เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชพเชคเซเชฎเช• เช•เซเชตเซ‡เชฐเซ€เช เชšเชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช•เซเชทเชฎเชคเชพเช“ เช…เชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชธเชพเชฅเซ‡ เชœเซ‹เชกเซ‡ เช›เซ‡ เชœเซ‡ เชธเช‚เช—เซเชฐเชนเชฟเชค เชกเซ‡เชŸเชพเชจเชพ เชฎเซ‹เชŸเชพ เชญเชพเช—เชจเซ‡ เช†เชตเชฐเซ€ เชฒเซ‡ เช›เซ‡, เชœเซ‡เชฎ เช•เซ‡ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ€ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเชพเชฎเช—เซเชฐเซ€เชจเซ‡ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชตเซ€ เช…เชฅเชตเชพ เช˜เชฃเชพ เชฎเซ‹เชŸเชพ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ‡ เชฎเชฐเซเชœ เช•เชฐเชตเซเช‚. เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เช•เซ‹เชก C++ เชฎเชพเช‚ เชฒเช–เชพเชฏเซ‡เชฒ เช›เซ‡ เช…เชจเซ‡ MIT เชฒเชพเชฏเชธเชจเซเชธ เชนเซ‡เช เชณ เชตเชฟเชคเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

เชกเช•เชกเซ€เชฌเซ€ เชเชธเช•เซเชฏเซเชเชฒ เชญเชพเชทเชพเชจเซ€ เชตเชฟเชธเซเชคเซƒเชค เชฌเซ‹เชฒเซ€ เชชเซ‚เชฐเซ€ เชชเชพเชกเซ‡ เช›เซ‡ เชœเซ‡เชฎเชพเช‚ เช–เซ‚เชฌ เชœ เชœเชŸเชฟเชฒ เช…เชจเซ‡ เชฒเชพเช‚เชฌเชพ เชธเชฎเชฏเชฅเซ€ เชšเชพเชฒเชคเชพ เชชเซเชฐเชถเซเชจเซ‹เชจเซ‡ เชนเซ‡เชจเซเชกเชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชตเชงเชพเชฐเชพเชจเซ€ เช•เซเชทเชฎเชคเชพเช“ เชถเชพเชฎเซ‡เชฒ เช›เซ‡. เชœเชŸเชฟเชฒ เชชเซเชฐเช•เชพเชฐเซ‹ (เชเชฐเซ‡, เชธเซเชŸเซเชฐเช•เซเชšเชฐเซเชธ, เชฏเซเชจเชฟเชฏเชจเซ‹) เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชถเช•เซเชฏ เช›เซ‡, เชคเซ‡เชฎเชœ เชฎเชจเชธเซเชตเซ€ เช…เชจเซ‡ เชจเซ‡เชธเซเชŸเซ‡เชก เชธเชนเชธเช‚เชฌเช‚เชงเชฟเชค เชธเชฌเช•เซเชตเซ‡เชฐเซ€เชเชจเซ‹ เช…เชฎเชฒ เช•เชฐเชตเซ‹ เชถเช•เซเชฏ เช›เซ‡. เชฌเชนเซเชตเชฟเชง เชชเซเชฐเชถเซเชจเซ‹เชจเชพ เชเช•เชธเชพเชฅเซ‡ เช…เชฎเชฒเซ€เช•เชฐเชฃ, CSV เช…เชจเซ‡ Parquet เชซเชพเช‡เชฒเซ‹เชฎเชพเช‚เชฅเซ€ เชธเซ€เชงเชพ เชชเซเชฐเชถเซเชจเซ‹เชจเชพ เช…เชฎเชฒเซ€เช•เชฐเชฃเชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เชฎเชณเซ‡ เช›เซ‡. PostgreSQL DBMS เชฎเชพเช‚เชฅเซ€ เช†เชฏเชพเชค เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช‰เชชเชฒเชฌเซเชง เช›เซ‡.

เช† เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ SQLite เชฎเชพเช‚เชฅเซ€ เชถเซ‡เชฒ, PostgreSQL เชฎเชพเช‚เชฅเซ€ เชชเชพเชฐเซเชธเชฐ, MonetDB เชฎเชพเช‚เชฅเซ€ เชกเซ‡เชŸ เชฎเซ‡เชฅ เช˜เชŸเช•, เชตเชฟเชจเซเชกเซ‹ เชซเช‚เช•เซเชถเชจเซเชธเชจเซเช‚ เชชเซ‹เชคเชพเชจเซเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃ (เชธเซ‡เช—เชฎเซ‡เชจเซเชŸ เชŸเซเชฐเซ€ เชเช—เซเชฐเซ€เช—เซ‡เชถเชจ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎ เชชเชฐ เช†เชงเชพเชฐเชฟเชค), RE2 เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชฐเซ‡เช—เซเชฏเซเชฒเชฐ เชเช•เซเชธเชชเซเชฐเซ‡เชถเชจ เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ, เชคเซ‡เชจเซเช‚ เชชเซ‹เชคเชพเชจเซเช‚ เช•เซเชตเซ‡เชฐเซ€ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเชฐ, เช•เชพเชฐเซเชฏเซ‹เชจเชพ เชเช• เชธเชพเชฅเซ‡ เช…เชฎเชฒเซ€เช•เชฐเชฃเชจเซ‡ เชฎเซ‡เชจเซ‡เชœ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ MVCC เชฎเชฟเช•เซ‡เชจเชฟเชเชฎ (เชฎเชฒเซเชŸเชฟ-เชตเชฐเซเชเชจ เช•เซ‹เชจเช•เชฐเชจเซเชธเซ€ เช•เช‚เชŸเซเชฐเซ‹เชฒ), เช…เชจเซ‡ เชนเชพเชฏเชชเชฐ-เชชเชพเช‡เชชเชฒเชพเช‡เชจเชฟเช‚เช— เช•เซเชตเซ‡เชฐเซ€ เชเช•เซเชเซ‡เช•เซเชฏเซเชถเชจ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชตเซ‡เช•เซเชŸเชฐเชพเช‡เชเซเชก เช•เซเชตเซ‡เชฐเซ€ เชเช•เซเชเซ‡เช•เซเชฏเซเชถเชจ เชเชจเซเชœเชฟเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เชเช• เช“เชชเชฐเซ‡เชถเชจเชฎเชพเช‚ เชฎเซ‚เชฒเซเชฏเซ‹เชจเชพ เชฎเซ‹เชŸเชพ เชธเซ‡เชŸเชจเซ‡ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡.

เชจเชตเชพ เชธเช‚เชธเซเช•เชฐเชฃเชฎเชพเช‚:

  • เชเชจเซเช•เซเชฐเชฟเชชเซเชŸเซ‡เชก เชกเซ‡เชŸเชพเชฌเซ‡เช เชซเชพเช‡เชฒเซ‹ เชธเซเชŸเซ‹เชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช‰เชฎเซ‡เชฐเชพเชฏเซ‡เชฒ เชธเชชเซ‹เชฐเซเชŸ. GCM เชฎเซ‹เชกเชฎเชพเช‚ เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชฎเชพเชŸเซ‡ AES-256 เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฅเชพเชฏ เช›เซ‡. เช† เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจเชฎเชพเช‚ เชซเช•เซเชค เชฎเซเช–เซเชฏ เชกเซ‡เชŸเชพ เชซเชพเช‡เชฒ เชœ เชจเชนเซ€เช‚ เชชเชฐเช‚เชคเซ WAL เชฒเซ‹เช— เช…เชจเซ‡ เช•เชพเชฎเชšเชฒเชพเช‰ เชซเชพเช‡เชฒเซ‹ เชชเชฃ เชถเชพเชฎเซ‡เชฒ เช›เซ‡. เชกเซ‡เชŸเชพเชฌเซ‡เช เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เช•เซ€ ENCRYPTION_KEY เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐ เชฆเซเชตเชพเชฐเชพ ATTACH เช†เชฆเซ‡เชถเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เช›เซ‡. ATTACH 'encrypted.db' AS enc_db (ENCRYPTION_KEY 'quack_quack');
  • MERGE INTO เช•เชฎเชพเชจเซเชก เชฎเชพเชŸเซ‡ เช‰เชฎเซ‡เชฐเชพเชฏเซ‡เชฒ เชธเชชเซ‹เชฐเซเชŸ, เชœเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— INSERT โ€ฆ ON CONFLICT เชธเซเชŸเซ‡เชŸเชฎเซ‡เชจเซเชŸเชจเชพ เชตเชฟเช•เชฒเซเชช เชคเชฐเซ€เช•เซ‡ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡, เชคเซ‡เชจเซ‡ เชชเซเชฐเชพเชฅเชฎเชฟเช• เช•เซ€เชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€ เช…เชจเซ‡ เชคเซ‡ เชฎเชจเชธเซเชตเซ€ เชฎเชฐเซเชœ เชถเชฐเชคเซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡. MERGE INTO เช•เชฎเชพเชจเซเชก เชคเชฎเชจเซ‡ เชถเชฐเชคเซ€ SQL เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟเช“ เชฌเชจเชพเชตเชตเชพ เชฆเซ‡ เช›เซ‡ เชœเซ‡ เชเช• เชœ เชธเซเชŸเซ‡เชŸเชฎเซ‡เชจเซเชŸเชฎเชพเช‚ INSERT, UPDATE เช…เชจเซ‡ DELETE เช•เชพเชฎเช—เซ€เชฐเซ€เชจเซ‡ เชœเซ‹เชกเซ‡ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, MERGE เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เชคเชฎเซ‡ เชฌเซ‡ เช•เซ‹เชทเซเชŸเช•เซ‹ เชฎเชฐเซเชœ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เช—เซเชฎ เชฅเชฏเซ‡เชฒ เชฐเซ‡เช•เซ‹เชฐเซเชก เชฆเชพเช–เชฒ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชนเชพเชฒเชจเชพเชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. deletes(item_id, delete_threshold) AS (VALUES (10, 3000)) เชธเชพเชฅเซ‡ MERGE INTO เชธเซเชŸเซ‹เช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช•เชพเชขเซ€ เชจเชพเช–เซ‡ เช›เซ‡ USING (item_id) WHEN MATCHED AND balance <delete_threshold THEN DELETE RETURNING merge_action, *;
  • เช…เชชเชพเชšเซ‡ เช†เช‡เชธเชฌเชฐเซเช— เชซเซ‹เชฐเซเชฎเซ‡เชŸเชฎเชพเช‚ เช•เซ‹เชทเซเชŸเช•เซ‹ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เช‰เชชเชฐเชพเช‚เชค, เชฒเซ‡เช–เชจ เช•เชพเชฎเช—เซ€เชฐเซ€ เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡ (เช…เช—เชพเช‰, เชซเช•เซเชค เชตเชพเช‚เชšเชจ เช•เชพเชฎเช—เซ€เชฐเซ€เชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชคเซ‹ เชนเชคเซ‹), เชœเซ‡ เชคเชฎเชจเซ‡ เช†เช‡เชธเชฌเชฐเซเช—เชฅเซ€ เชกเช•เชกเซ€เชฌเซ€เชฎเชพเช‚ เชกเซ‡เชŸเชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡ เช…เชจเซ‡ เชŠเชฒเชŸเซเช‚.
  • เช•เชฎเชพเชจเซเชก เชฒเชพเช‡เชจ เช•เซเชฒเชพเชฏเช‚เชŸเชจเซ‡ เช“เชชเชฐเซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชชเซเชฐเช—เชคเชฟ เชธเซ‚เชšเช• เชธเชพเชฅเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡, เชœเซ‡ เชชเซ‚เชฐเซเชฃ เชฅเชตเชพ เชธเซเชงเซ€ เชฌเชพเช•เซ€ เชฐเชนเซ‡เชฒเชพ เชธเชฎเชฏเชจเซ€ เช†เช—เชพเชนเซ€ เช•เชฐเซ‡ เช›เซ‡.
  • FILL เชตเชฟเชจเซเชกเซ‹ เชซเช‚เช•เซเชถเชจ เช‰เชฎเซ‡เชฐเซเชฏเซเช‚, เชœเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เซเชฐเชฎเชฌเชฆเซเชง เชตเชฟเชจเซเชกเซ‹เชฎเชพเช‚ เช–เซ‚เชŸเชคเชพ เชฎเซ‚เชฒเซเชฏเซ‹เชจเซ‡ เช‡เชจเซเชŸเชฐเชชเซ‹เชฒเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡. FROM (VALUES (1, 1), (2, NULL), (3, 42)) t(c1, c2) SELECT fill(c2) OVER (ORDER BY c1) f; 1 21 42
  • เชŸเซ‡เชฐเชพเชกเซ‡เชŸเชพ เชกเซ‡เชŸเชพเชฌเซ‡เช เชธเชพเชฅเซ‡ เช•เชจเซ‡เช•เซเชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชŸเซ‡เชฐเชพเชกเซ‡เชŸเชพ เช•เชจเซ‡เช•เซเชŸเชฐ เชเชก-เช“เชจ เชฒเชพเช—เซ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡. เช† เชเชก-เช“เชจ เชคเชฎเชจเซ‡ เชกเช•เชกเซ€เชฌเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชŸเซ‡เชฐเชพเชกเซ‡เชŸเชพเชฎเชพเช‚ เชธเซ€เชงเชพ เชœ เชŸเซ‡เชฌเชฒเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐ เช•เชฐเชตเชพ, เช•เซเชตเซ‡เชฐเซ€เช เชšเชฒเชพเชตเชตเชพ เช…เชจเซ‡ SQL เช†เชฆเซ‡เชถเซ‹ เชšเชฒเชพเชตเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡.
  • เชฎเซ‡เชฎเชฐเซ€เชฎเชพเช‚ เช•เซ‹เชทเซเชŸเช•เซ‹เชฎเชพเช‚ เชšเซ‡เช•เชชเซ‹เช‡เชจเซเชŸเชฟเช‚เช— เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช‰เชฎเซ‡เชฐเซเชฏเซ‹, เช•เชฎเซเชชเซเชฐเซ‡เชถเชจ เชธเชชเซ‹เชฐเซเชŸเชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเซเชฏเซ‹. เชšเซ‡เช•เชชเซ‹เช‡เชจเซเชŸเชฟเช‚เช— เชกเชฟเชฒเซ€เชŸ เช•เชฐเซ‡เชฒเซ€ เชชเช‚เช•เซเชคเชฟเช“เชจเซ‡ เชชเชฃ เชธเชพเชซ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชกเชฟเชฒเซ€เชŸ เช“เชชเชฐเซ‡เชถเชจเซเชธ เชชเช›เซ€ เชœเช—เซเชฏเชพ เชซเชฐเซ€เชฅเซ€ เชฎเซ‡เชณเชตเซ‡ เช›เซ‡. ATTACH ':memory:' AS memory_compressed (COMPRESS);
  • เช…เชจเซ‡เช• เชชเซเชฐเชฆเชฐเซเชถเชจ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชชเซเชฐเชธเซเชคเชพเชตเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡: เชธเซ‰เชฐเซเชŸเชฟเช‚เช— เช…เชฎเชฒเซ€เช•เชฐเชฃเชจเซ‡ k-เชตเซ‡ เชฎเชฐเซเชœ เชธเซ‰เชฐเซเชŸ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡, เชœเซ‡ เชกเซ‡เชŸเชพ เชฎเซ‚เชตเชฎเซ‡เชจเซเชŸ เช˜เชŸเชพเชกเซ‡ เช›เซ‡. เช•เซ‹เชฎเชจ เชŸเซ‡เชฌเชฒ เชเช•เซเชธเชชเซเชฐเซ‡เชถเชจเซเชธ (CTEs) เชนเชตเซ‡ เชกเชฟเชซเซ‹เชฒเซเชŸ เชฐเซ‚เชชเซ‡ เชฎเชŸเซ€เชฐเชฟเชฏเชฒเชพเช‡เชเซเชก เช›เซ‡.

เชธเซ‹เชฐเซเชธ: opennet.ru

DDoS เชธเซเชฐเช•เซเชทเชพ, VPS VDS เชธเชฐเซเชตเชฐ เชงเชฐเชพเชตเชคเซ€ เชธเชพเช‡เชŸเซเชธ เชฎเชพเชŸเซ‡ เชตเชฟเชถเซเชตเชธเชจเซ€เชฏ เชนเซ‹เชธเซเชŸเชฟเช‚เช— เช–เชฐเซ€เชฆเซ‹ ๐Ÿ”ฅ DDoS เชธเซเชฐเช•เซเชทเชพ, VPS VDS เชธเชฐเซเชตเชฐเซเชธ เชธเชพเชฅเซ‡ เชตเชฟเชถเซเชตเชธเชจเซ€เชฏ เชตเซ‡เชฌเชธเชพเช‡เชŸ เชนเซ‹เชธเซเชŸเชฟเช‚เช— เช–เชฐเซ€เชฆเซ‹ | ProHoster