DBA bot Joe. أناتولي ستانسلر (Postgres.ai)



كيف يعرف مطور الواجهة الخلفية أن استعلام SQL سيؤدي أداءً جيدًا في الإنتاج؟ في الشركات الكبيرة أو سريعة النمو ، لا يمكن للجميع الوصول إلى "المنتج". ومع الوصول ، لا يمكن التحقق من جميع الطلبات دون عناء ، وغالبًا ما يستغرق إنشاء نسخة من قاعدة البيانات ساعات. لحل هذه المشكلات ، أنشأنا DBA اصطناعيًا - جو. وقد تم بالفعل تنفيذه بنجاح في العديد من الشركات وساعد عشرات المطورين.



فيديو:







مرحبا! اسمي أناتولي ستانسلر. أعمل في شركة Postgres.ai . نحن ملتزمون بتسريع عملية التطوير عن طريق إزالة تأخيرات Postgres من المطورين و DBAs و QAs.



لدينا عملاء رائعون واليوم سيتم تخصيص جزء من التقرير للحالات التي التقينا بها أثناء العمل معهم. سأخبرك كيف ساعدناهم في حل بعض المشاكل الخطيرة جدًا.





, : « ?». review, , DBA-. – .



, , , . , . , , .





- prod - ? . , ? . , .





– prod. , , , - . prod, .





, . , .



?





staging - prod. prod, . , , staging.



- , . . prod.



?



  • , staging . , - , – , . Staging . , . . , .
  • , , , . . .




, , , - , , . - , , .



, , , - production.





, ? , , .



, ? , .



, , production, , .



, , , , , , . . .





, – . , cloud. 200 . , , . .



, prod .



? , .



.





, , . , 10 , 10 . , , . .





:



  • – 4,5 .



  • 30 .





, . . , .



. .





OpenZFS.





OpenZFS – copy-on-write , . . . .



:



  • LVM,



  • (, Pure Storage).





Database Lab, , . . OpenZFS, LVM .





? , , , , , , .



, - , : «, , - ».



. , .



. , , , , .





, :



  • – , . production. , , . WAL-E, WAL-G Barman. , - Cloud-, , RDS Cloud SQL, . - , , , production, , .



  • – , Database Lab. Cloud, On-premise. , ZFS . .





, , , - dev. dev . , 4,5 , ZFS 3,5 . . dev .



.



  • , DBA , .



  • QA- , prod. environment QA , . , , , , - , .



  • . , , .







:



  1. «», .



  2. , .



  3. , . . , .





  • . prod. .



  • . .





  1. , .


, ?





.



, , , . .



, . , ? .





? , , Slack-. .



? . . . . . , - , . .



Slack . , thread , , DBA, .





, , . , , , , .



, - .



, . . . .



production, .





Postgres . . Postgres, . . Shared Buffer Cache.



, Shared Buffer Cache Postgres , .



.





, , . - Shared Buffer Cache – 25 % , .



, , 4 instance, . . 4 . , , , .



, Buffer Cache , , . . , . , .



, prod , Postgres . , SeqScan. , ?



, Postgres Shared Buffer , effective_cache_size.





Effective_cache_size – , , . . Buffer Cache . . .



Postgres, , - , . , production.



. , , :



  • , prod.



  • .





, , , .



, , prod, , , , . , . . , , – ( ) , .



, Joe .





. – 1 . , 10 .





, . , 2,5 . , .



B Joe , .



, , . - , , .





, . , , . , 142 .





, , index scan , , ( ), .





- , .





, .





, , 2,5 156 , . 6 .





index only scan.



, - . Flame Graphs.





, . Flame Graphs : , , . . .



. , , .





, explain.depesz.com. , - , , .



, , explain.depesz.com, , .





– explain.dalibo.com. , . , , , -, .







, , Slack . , , , , thread Slack .





, . Update Database Lab, open source. Joe . . .



, - , Delphix, enterprise-. , . Postgres. open source. !



. !





! ! , , . . , .



, ? , . , 10 , , 10 . , . . , , ?



. . - , , , , fail-.



, . . . ? . ?



- ttl . , ttl.



, ?



1 , . . idle – 1 . , . , . , – .



, , , . ZFS? LVM? , c LVM . ? , , .



ZFS? , , . . instances . , . , . . LVM?



LVM meetup. – . ZFS . . . ZFS , Linux . . . . ZFS . , , . , , . . . . , . community, . ZFS – .



: ? , . , – . Pure Storage . .



, . – , , . . , .



ZFS . DelPhix, 300 . fortune 100 — 50 , . . NASA . . . open source Core. , open source. , . , . , . SELECT , . , DBA . . , . , . ZFS, . community , open source . .*



! ! . . . ? : , , - , - job . CPU , IO, ? .



. , ZFS , prod ZFS, ext4, . ?



. , . . , staging . , - , - . . prod. - , - – , , , - .



, , . , , , -, . , . , - .



. . , production , , ? - ? – - MySQL?



. , . Joe, , . ? Joe . , . , – . , .



MySQL. , state . Postgres, Postgres. . Postgres. , , . .



, MySQL. . , . .. MySQL . , ZFS.



! . , , , . , ?



, . , Postgres. ?



, , . , , , prod . - . prod, , prod , .



, , . , , .



?



, , , . . . , .



, , , , . , . . .



. cloud- , , Google, Amazon . .



. MySQL . , , , , . , , , , Postgres, , , instance.



. , . , , , . . , . 100 , . ? , , , , ?



, ZFS . , . , . , .



, , , , ?



, .



, , , ?



, .



. ?



, . - . . , . , . . data corruption . , , . . , .



, ! Joe . , . , Explain Analyze, .



. , : «SELECT FROM WHERE email = ». . . , - . . . , , , . - , .



! ! . Slack , - instances, ?



يوجد الآن ارتباط لـ Slack ، أي أنه لا يوجد برنامج مراسلة آخر ، لكنني أريد حقًا دعم برامج المراسلة الأخرى أيضًا. ما الذي تستطيع القيام به؟ يمكنك نشر DB Lab بدون Joe ، والمشي باستخدام REST API أو استخدام نظامنا الأساسي وإنشاء نسخ والتواصل مع PSQL. ولكن يمكنك القيام بذلك إذا كنت مستعدًا لمنح مطوريك حق الوصول إلى البيانات ، حيث لن تكون هناك أية شاشة.



لست بحاجة إلى هذه الطبقة ، لكني بحاجة إلى مثل هذه الفرصة.



ثم - نعم ، يمكن القيام بذلك.




All Articles