Gleyzer両氏によって共同開発されました。2019で、同言語の発表を行いました。InfoQはPurdy氏に言語と、氏らが解決を目指した問題について聞きました。設計/アーキテクチャアジャイルマニュフェスト:ソフトウェアアーキテクトの視点ソフトウェアアーキテクトの役割と責任はアジャイルソフトウェア開発のためのマニフェストの価値と矛盾していると見えますが、優れたアーキテクトはアジャイル開発チームをサポートするテクニックを見つけています。Streamingは、ストリーミングデータのためのSQLライクなインターフェースを提供します。Streamsによって、Redisがストリーミングデータを複数のプロデューサとコンシューマの間で消費、保持、配信することができるようになります。ソフトウェア開発のマニフェストたゆまず息もつかずに市場に突進することで、会社を静かに消滅の崖っぷちへと追い込みます。それは設計してコードを書く方法を再考する時です。簡単さへの投資は、速さへの投資です。簡単さは知的財産の主鉱脈でもあります。競争上の優位性は、一度失ったら、もう一度手に入れることはほとんど不可能です。Buytaerts氏が過去10年間にわたって、企業がDevOps採用のハイプサイクルをくぐり抜け、変革に対する誤解を解消する過程を支援してきた経験について語ります。Barua翻訳者h_yoshida原文(投稿日:2017/01/26)へのリンクUberエンジニアリングチームがChaperoneという名のKafkaの監査ツールを,オープンソースプロジェクトとしてリリースした。ChaperoneはUberの運用するマルチデータセンタかつ大容量のKafaにおけるデータの損失,遅延,メッセージ重複の監査と検出を可能にする。Uberが運用するKafkaのデータパイプラインは,複数のデータセンタに渡っている。同社のシステムでは,サービスコールやイベントによるログメッセージが大量に生成されるため,スループット向上のために最適化が行われている。これらのサービスはアクティブ-アクティブモードで,データセンタを越えて稼働している。UberのKafkaパイプラインを経由するデータはバッチ処理だけでなく,リアルタイムなデータ解析にも使用される。KafkaはuRepllicatorというツールと共に,同社のシステムのさまざまなパーツを接続するメッセージパスとして機能する。uReplicatorはKafkaのMirrorMakerのデザインを基盤とするKafkaレプリケータで,既存のKafkaクラスタのコピーを生成するために使用することができる。ログメッセージはKafkaのプロキシにプッシュされた後に集計され,そのデータセンタのローカルな“リージョナル”Kafkaクラスタにプッシュされる。コンシューマはリージョナルKafkaクラスタに加えて,複数のデータセンタのデータを保持するコンバインドKaflaセットアップからもメッセージを参照することができる。Chaperoneは,これらのメッセージをリアルタイムで監査する必要性を満足させる目的で開発された。Chaperoneの主な仕事は,パイプラインを通過するデータの損失や遅延,あるいは重複といった異常を検出することだ。Chaperoneは4つのコンポーネントで構成されている。各アプリケーションからのメッセージを収集,集計し,統計情報を監査メッセージとして出力する“AuditLibrary”。windows)”の概念を使用して情報を監査メッセージに集計した上で,専用のKafkaトピックに送信する。Flinkなどのストリーム処理システムにおいて,ストリーミングデータをオーバーラップしないセグメントにグループ化するために使用されている。Kafkaからのそれぞれのメッセージすべてをコンシュームして,タイムスタンプを付加した監査メッセージを生成し,専用のKafkaトピックにプッシュする“ChaperoneService”。ChaperoneServiceの生成したメッセージを取得してデータベースにプッシュし,それを取得してユーザ用のダッシュボードに表示可能にする“ChaperoneCollector”。ダッシュボードではメッセージの紛失だけでなく,遅延についても検出および指摘が容易に可能だ。APIを公開する“WebService”。監査データの正確性を保証する必要があった。それを実現する戦略のひとつは,各メッセージが確実に一度,監査されることを保証することだ。この目的のためにログ先行書き込み(WAL)のテクニックが使用された。WALでは,監査メッセージをChaperoneServiceからKafkaに送信する前に記録することによって,サービスがクラッシュした時のメッセージ再生を可能にする。PostgreSQLなどのデータベースで使用されている一般的なテクニックだ。ひとつの戦略は,監査メッセージが処理されたステージに関わらず,一貫したタイムスタンプを持つことだ。この方法では,Chaperoneの問題を完全に解決することはできないため,メッセージエンコーディングに基づいたテクニックと組み合わせて使用されている。Avroスキーマでエンコードされたメッセージについては,タイムスタンプを一定時間内に抽出することができるが,JSONメッセージを処理するためにChaperoneチームは,JSONメッセージ全体をデコードしなくてもタイムスタンプを読み取り可能なストリームベースのJSONパーザを開発した。これによって処理されたタイムスタンプは,プロキシクライアントとサーバ層で使用されている。データ損失の検出とは別にChaperoneでは,Kafkaのデータを,オフセットではなくタイムスタンプに基づいて読み取ることが可能だ。これによってメッセージがコンシュームされているかどうかに関わらず,任意の時間範囲のメッセージを読むことができる。ユーザが読み出したメッセージのダンプが可能になることから,Chaperoneはデバッグツールとしても機能する。ChaperoneのソースコードはGitHubで公開されている。毎週火曜日に前週のまとめコンテンツがお送りいたします。25万人ものシニアデベロッパーのコミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。あなたの意見をお聞かせください。毎週火曜日に前週のまとめコンテンツがお送りいたします。25万人ものシニアデベロッパーのコミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。よい世界へ私たちが暮らす世界を大切に思い、よりよいものにしたいと考えています。人のためのソフトウェア開発を加速し私たちのミッションを実現することで、この思いを成し遂げようとしています。私たちは利益の1%をさまざまな慈善団体に寄付しています。会社として、また従業員として、そうしたことの価値を強く信じているからです。with.プライバシーBTあなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。アドレス*Eメールを変更すると確認のメールが配信されます。会社名:現在の会社名をご入力ください。Other組織規模:現在の組織規模をご入力ください。2,501+国:現在の国を設定してください。Zimbabwe都道府県:現在の都道府県に設定してください。次の都道府県にアップデートする:ニュースレターを購読しますか?インダストリーメールを購読しますか?本Eメールに登録すると、以前より関心のあったトピックの関連情報をお送りする場合がございます。詳細はこちらのプライバシーポリシーをご覧ください。newsletter?新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。