
Presto (PrestoDB、およびTrinoにブランド変更されたPrestoSQLを含む)は、 SQLクエリ言語を使用するビッグデータ用の分散クエリエンジンです。そのアーキテクチャにより、ユーザーはHadoop、Cassandra、Kafka、AWS S3、Alluxio、MySQL、MongoDB 、 Teradataなどのデータソースをクエリでき、[ 1 ]クエリ内で複数のデータソースを使用できます。Prestoは、Apacheライセンスの下でリリースされたコミュニティ主導のオープンソースソフトウェアです。
Presto は元々Facebook, Inc. (後に Meta に改名) で、データアナリストがApache Hadoopの大規模データウェアハウスで対話型クエリを実行するために設計および開発されました。最初の 4 人の開発者は Martin Traverso、Dain Sundstrom、David Phillips、および Eric Hwang でした。Presto が登場する前は、Facebook のデータアナリストはマルチペタバイトのデータウェアハウスで SQL 分析を実行するためにApache Hiveに依存していました。 [ 2 ] Hive は Facebook の規模には遅すぎると判断され、高速クエリを実行するギャップを埋めるために Presto が考案されました。[ 3 ]当初の開発は 2012 年に開始され、同年後半に Facebook に導入されました。2013 年 11 月に Facebook はオープンソースのリリースを発表しました。[ 3 ] [ 4 ]
2014年、NetflixはAmazon Simple Storage Service(S3)に保存された10ペタバイトのデータにPrestoを使用していることを明らかにした。 [ 5 ] 2016年11月、AmazonはPrestoをベースにしたAthenaというサービスを発表した。 [ 6 ] 2017年、TeradataはPrestoの商用サポートを行うStarburst Dataという会社をスピンアウトし、2014年にHadaptから買収したスタッフも参加した。[ 7 ] TeradataのQueryGridソフトウェアにより、PrestoはTeradataリレーショナルデータベースにアクセスできた。[ 8 ]
2019年1月、Presto Software Foundationが発表されました。この財団は、Prestoオープンソース分散SQLクエリエンジンの発展を目的とした非営利団体です。[ 9 ] [ 10 ]同時に、Prestoの開発は分岐し、PrestoDBはFacebookによって、PrestoSQLはPresto Software Foundationによって維持され、一部コードが相互に利用されています。
2019年9月、FacebookはPrestoDBをLinux Foundationに寄贈し、Presto Foundationを設立した。[ 11 ] Prestoの開発者も、主要な貢献者やコミッターも、この財団への参加を招待されなかった。[ 12 ]
2020年までに、Prestoのオリジナル開発者4人全員がStarburstに加わった。[ 13 ] 2020年12月、Facebookが「Presto」という名称の商標を取得したため(Linux Foundationにも寄贈)、PrestoSQLはTrinoにブランド変更された。[ 14 ]
2020年にはAhanaという別の会社がPrestoDBフォークをクラウドサービスとして商用化すると発表され、2023年にIBMに買収された。 [ 15 ]
Prestoのアーキテクチャは、クラスタコンピューティング(大規模並列処理(MPP)とも呼ばれる)を使用する他のデータベース管理システムと非常によく似ています。1つのコーディネーターが複数のワーカーと同期して動作します。クライアントはSQLステートメントを送信し、それが解析および計画され、その後、並列タスクがワーカーにスケジュールされます。ワーカーはデータソースから行を共同で処理し、クライアントに返される結果を生成します。各クエリでHadoop MapReduceメカニズムを使用していた元のApache Hive実行モデルと比較して、Prestoは中間結果をディスクに書き込まないため、大幅な速度向上を実現しています。PrestoはJavaで記述されています。
Presto クエリは、複数のソースからのデータを組み合わせることができます。Presto は、 Alluxio、Hadoop 分散ファイルシステム(データレイクと呼ばれることが多い)、Amazon S3、MySQL、PostgreSQL、Microsoft SQL Server、Amazon Redshift、Apache Kudu、Apache Phoenix、Apache Kafka、Apache Cassandra、Apache Accumulo、MongoDB、Redisなどのデータソースへのコネクタを提供します。Apache Impalaなどの他の Hadoop ディストリビューション固有のツールとは異なり、Presto は Hadoop のどのバリアントでも、また Hadoop なしでも動作します。Presto はコンピューティングとストレージの分離をサポートしており、オンプレミスまたはクラウドコンピューティングを使用してデプロイできます。
{{cite web}}: CS1 maint: 複数の名前: 著者リスト (リンク)