[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:tr:data-engineer\u002Fwh-redshift-distribution-sort-vacuum":4,"config":191},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":94,"samples":105},"data-engineer","Data Engineer","","wh-redshift-distribution-sort-vacuum","Wh Redshift Distribution Sort Vacuum","tr",75,1950,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,88,91],{"key":19,"name":20,"count":11},"data-governance-lineage","Data Governance Lineage",{"key":22,"name":23,"count":11},"data-modeling-warehousing","Data Modeling Warehousing",{"key":25,"name":26,"count":11},"data-partitioning-scaling","Data Partitioning Scaling",{"key":28,"name":29,"count":11},"data-pipeline-design","Data Pipeline Design",{"key":31,"name":32,"count":11},"data-pipeline-orchestration","Data Pipeline Orchestration",{"key":34,"name":35,"count":11},"data-pipeline-reliability","Data Pipeline Reliability",{"key":37,"name":38,"count":11},"data-quality-validation","Data Quality Validation",{"key":40,"name":41,"count":11},"pe-airflow-scheduling-dependencies","Pe Airflow Scheduling Dependencies",{"key":43,"name":44,"count":11},"pe-dbt-models-materializations-tests","Pe Dbt Models Materializations Tests",{"key":46,"name":47,"count":11},"pe-file-formats-table-formats","Pe File Formats Table Formats",{"key":49,"name":50,"count":11},"pe-incremental-cdc-merge-mechanics","Pe Incremental Cdc Merge Mechanics",{"key":52,"name":53,"count":11},"pe-spark-api-semantics-udfs","Pe Spark Api Semantics Udfs",{"key":55,"name":56,"count":11},"pe-spark-execution-shuffle-partitions","Pe Spark Execution Shuffle Partitions",{"key":58,"name":59,"count":11},"st-flink-runtime-checkpointing-state","St Flink Runtime Checkpointing State",{"key":61,"name":62,"count":11},"st-flink-time-watermarks-windows","St Flink Time Watermarks Windows",{"key":64,"name":65,"count":11},"st-kafka-broker-storage-replication","St Kafka Broker Storage Replication",{"key":67,"name":68,"count":11},"st-kafka-connect-schema-registry","St Kafka Connect Schema Registry",{"key":70,"name":71,"count":11},"st-kafka-producer-consumer-semantics","St Kafka Producer Consumer Semantics",{"key":73,"name":74,"count":11},"streaming-fundamentals","Streaming Fundamentals",{"key":76,"name":77,"count":11},"st-streaming-joins-tables","St Streaming Joins Tables",{"key":79,"name":80,"count":11},"wh-bigquery-execution-slots-cost","Wh Bigquery Execution Slots Cost",{"key":82,"name":83,"count":11},"wh-bigquery-storage-partitioning-clustering","Wh Bigquery Storage Partitioning Clustering",{"key":85,"name":86,"count":11},"wh-materialized-views-caching","Wh Materialized Views Caching",{"key":8,"name":9,"count":11},{"key":89,"name":90,"count":11},"wh-snowflake-compute-warehouses","Wh Snowflake Compute Warehouses",{"key":92,"name":93,"count":11},"wh-snowflake-storage-micropartitions","Wh Snowflake Storage Micropartitions",[95,99,102],{"key":96,"name":97,"count":98},"pipelines-etl","Pipelines \u002F ETL",450,{"key":100,"name":101,"count":98},"streaming","Streaming",{"key":103,"name":104,"count":98},"warehousing","Warehousing",[106,124,137,151,164,177],{"id":107,"topic":9,"difficulty":108,"body":109,"options":110,"correct_key":118,"explanation":123},"01a00fd5-7d32-74b4-a8f2-264f029ce92e",1,"Amazon Redshift'te provisioned bir cluster'da leader node'un rolü için hangisi doğrudur?",[111,114,117,120],{"key":112,"text":113},"a","Her tablonun tam bir kopyasını tutar, böylece sorgular compute node'lara hiç dokunmaz.",{"key":115,"text":116},"b","Join ve aggregation işinin büyük kısmını kendisi yürütüp sonucu compute node'lara gönderir.",{"key":118,"text":119},"c","Gelen sorguları parse eder, yürütme planı kurar ve compute node'ları koordine eder.",{"key":121,"text":122},"d","Yalnızca single-node cluster'larda bulunur, compute node eklenince ortadan kalkar.","Leader node istemciden gelen sorguları alır, parse eder, yürütme planı kurar ve compute node'lar arasında paralel yürütmeyi koordine edip sonuçları toplar. Her tablonun tam kopyasını tutmaz, join\u002Faggregation'ın esas yükünü kendisi taşımaz; multi-node cluster'larda da (compute node'lardan ayrı olarak) vardır.",{"id":125,"topic":9,"difficulty":108,"body":126,"options":127,"correct_key":115,"explanation":136},"01a00fd5-7d33-767a-b800-6b95bd2b220f","Redshift'te 'slice' nedir?",[128,130,132,134],{"key":112,"text":129},"Her VACUUM öncesi otomatik alınan bir tablo anlık görüntüsüdür.",{"key":115,"text":131},"Bir compute node üzerinde verinin bir kısmını işleyen bir CPU\u002Fbellek\u002Fdisk payı.",{"key":118,"text":133},"Yalnızca Redshift Serverless workgroup'ları için kullanılan bir faturalama birimidir.",{"key":121,"text":135},"Yalnızca leader node'un metadata'sına ayrılmış ayrı bir compute node'dur.","Her compute node slice'lara bölünür; her slice, node'un verisinin bir kısmını diğer slice'larla paralel işlemek için kendi CPU, bellek ve disk payını alır. Snapshot, yalnızca Serverless'e özgü faturalama ya da leader node metadata'sıyla ilgisi yoktur.",{"id":138,"topic":9,"difficulty":139,"body":140,"options":141,"correct_key":112,"explanation":150},"01a00fd5-7d35-708d-a59a-00c6331f0409",2,"Compute node başına slice sayısı, verinin Redshift cluster'ında nasıl yayıldığını neden etkiler?",[142,144,146,148],{"key":112,"text":143},"Redshift, bir tablonun satırlarını cluster'daki her slice'a dağıtır.",{"key":115,"text":145},"Slice sayısı yalnızca backup dosya boyutunu etkiler, sorgu yürütmede rolü yoktur.",{"key":118,"text":147},"Redshift, node tipinden bağımsız olarak her cluster'da her zaman tam olarak bir slice kullanır.",{"key":121,"text":149},"Slice'lar, bir cluster'ın hangi AWS Region'da oluşturulacağını belirler.","Bir tablonun satırları, tablonun distribution style'ına göre cluster'daki her slice'a dağıtılır; dolayısıyla kaç slice olduğu (node sayısı × node başına slice sayısı) verinin ve üzerindeki paralel işin ne kadar ince dağıldığını doğrudan belirler. Slice sayısı backup boyutuyla, cluster başına sabit bir sayıyla ya da region seçimiyle ilgili değildir.",{"id":152,"topic":9,"difficulty":139,"body":153,"options":154,"correct_key":118,"explanation":163},"01a00fd5-7d35-7cd7-81f2-b7b792e2e9ca","Bir tablo oluştururken DISTSTYLE EVEN ne yapar?",[155,157,159,161],{"key":112,"text":156},"Her satır her node'a kopyalanır, böylece her slice tablonun tamamını tutar.",{"key":115,"text":158},"Satırlar, kesinlikle primary key değerlerine göre slice'lara gruplanır.",{"key":118,"text":160},"Leader node satırları round-robin, kolon değerine bakmadan dağıtır.",{"key":121,"text":162},"Redshift, tablo büyüdükçe KEY ile ALL arasında otomatik seçim yapar.","EVEN dağıtımda leader node, herhangi bir kolonun değerine bakmaksızın satırları slice'lara round-robin verir. Her satırı her node'a kopyalamak ALL'ı, bir kolona göre gruplamak KEY'i, tablo büyüdükçe stil değiştirmek ise EVEN'i değil AUTO'yu tanımlar.",{"id":165,"topic":9,"difficulty":139,"body":166,"options":167,"correct_key":112,"explanation":176},"01a00fd5-7d37-7a9e-804d-71faba96348a","DISTSTYLE KEY ne yapar?",[168,170,172,174],{"key":112,"text":169},"Satırlar, belirlenen tek bir kolonun değerine göre slice'lara dağıtılır.",{"key":115,"text":171},"Satırlar kolon değerlerinden bağımsız olarak slice'lara round-robin dağıtılır.",{"key":118,"text":173},"Tablonun tamamı cluster'daki her compute node'a kopyalanır.",{"key":121,"text":175},"Redshift, dağıtım kolonunu her sorguda otomatik olarak kendisi seçer.","KEY dağıtımı, seçilen tek bir kolonun hash'lenmiş değerine göre satırları slice'lara yerleştirir; bu yüzden aynı değere sahip satırlar aynı slice'ta biter. Round-robin yerleşim EVEN'i, tam kopyalama ALL'ı tanımlar; dağıtım kolonu sorgu bazında değil tablo tasarımında sabitlenir.",{"id":178,"topic":9,"difficulty":179,"body":180,"options":181,"correct_key":121,"explanation":190},"01a00fd5-7d39-77f5-9bf7-20f7971eb33b",3,"Bir tablo için DISTSTYLE ALL seçmenin doğrudan maliyeti nedir?",[182,184,186,188],{"key":112,"text":183},"Sorgu sonuçları strong consistent yerine eventually consistent hale gelir.",{"key":115,"text":185},"Tablo artık DISTSTYLE KEY olan tablolarla join edilemez.",{"key":118,"text":187},"Redshift o tablo için compression encoding'i devre dışı bırakır.",{"key":121,"text":189},"Depolama node sayısıyla çarpılır, load ve update işlemleri de uzar.","ALL dağıtımı tablonun tam bir kopyasını her node'a koyar; bu yüzden depolama kabaca node sayısıyla orantılı büyür, ayrıca her node'un kopyasının senkron kalması gerektiğinden load, update ve insert işlemleri uzar. Consistency semantiğini, KEY dağıtımlı tablolarla join edilebilirliği ya da compression desteğini etkilemez.",{"fields":192,"seniorities":408,"interview_shapes":409,"locales":414,"oauth":416,"question_count":419,"coach_enabled":420,"jd_match_enabled":420},[193,218,238,254,278,291,310,329,351,370,377,399],{"key":194,"name_tr":195,"name_en":195,"sort":108,"specializations":196},"backend","Backend",[197,200,203,206,209,212,215],{"key":198,"name":199,"field":194},"general","Genel",{"key":201,"name":202,"field":194},"go","Go",{"key":204,"name":205,"field":194},"python","Python",{"key":207,"name":208,"field":194},"java","Java",{"key":210,"name":211,"field":194},"csharp","C#\u002F.NET",{"key":213,"name":214,"field":194},"nodejs","Node.js",{"key":216,"name":217,"field":194},"php","PHP",{"key":219,"name_tr":220,"name_en":220,"sort":139,"specializations":221},"frontend","Frontend",[222,223,226,229,232,235],{"key":198,"name":199,"field":219},{"key":224,"name":225,"field":219},"javascript","JavaScript",{"key":227,"name":228,"field":219},"typescript","TypeScript",{"key":230,"name":231,"field":219},"react","React",{"key":233,"name":234,"field":219},"vue","Vue",{"key":236,"name":237,"field":219},"angular","Angular",{"key":239,"name_tr":240,"name_en":240,"sort":179,"specializations":241},"fullstack","Fullstack",[242,243,244,245,246,247,248,249,250,251,252,253],{"key":198,"name":199,"field":239},{"key":201,"name":202,"field":194},{"key":204,"name":205,"field":194},{"key":207,"name":208,"field":194},{"key":210,"name":211,"field":194},{"key":213,"name":214,"field":194},{"key":216,"name":217,"field":194},{"key":224,"name":225,"field":219},{"key":227,"name":228,"field":219},{"key":230,"name":231,"field":219},{"key":233,"name":234,"field":219},{"key":236,"name":237,"field":219},{"key":255,"name_tr":256,"name_en":256,"sort":257,"specializations":258},"devops-cloud","DevOps \u002F Cloud",4,[259,260,263,266,269,272,275],{"key":198,"name":199,"field":255},{"key":261,"name":262,"field":255},"aws","AWS",{"key":264,"name":265,"field":255},"gcp","GCP",{"key":267,"name":268,"field":255},"azure","Azure",{"key":270,"name":271,"field":255},"kubernetes","Kubernetes",{"key":273,"name":274,"field":255},"terraform","Terraform",{"key":276,"name":277,"field":255},"linux","Linux",{"key":279,"name_tr":280,"name_en":280,"sort":281,"specializations":282},"ai-engineer","AI Engineer",5,[283,284,285,288],{"key":198,"name":199,"field":279},{"key":204,"name":205,"field":279},{"key":286,"name":287,"field":279},"llm-rag","LLM\u002FRAG",{"key":289,"name":290,"field":279},"mlops","MLOps",{"key":292,"name_tr":293,"name_en":294,"sort":295,"specializations":296},"database","Veritabanı","Database",6,[297,298,301,304,307],{"key":198,"name":199,"field":292},{"key":299,"name":300,"field":292},"postgresql","PostgreSQL",{"key":302,"name":303,"field":292},"mysql","MySQL",{"key":305,"name":306,"field":292},"mongodb","MongoDB",{"key":308,"name":309,"field":292},"redis","Redis",{"key":311,"name_tr":312,"name_en":313,"sort":314,"specializations":315},"mobile","Mobil","Mobile",7,[316,317,320,323,326],{"key":198,"name":199,"field":311},{"key":318,"name":319,"field":311},"ios-swift","iOS (Swift)",{"key":321,"name":322,"field":311},"android-kotlin","Android (Kotlin)",{"key":324,"name":325,"field":311},"flutter","Flutter",{"key":327,"name":328,"field":311},"react-native","React Native",{"key":330,"name_tr":331,"name_en":332,"sort":333,"specializations":334},"security","Güvenlik","Security",8,[335,336,339,342,345,348],{"key":198,"name":199,"field":330},{"key":337,"name":338,"field":330},"appsec","AppSec",{"key":340,"name":341,"field":330},"offensive-pentest","Offensive \u002F Pentest",{"key":343,"name":344,"field":330},"cloud-security","Cloud Security",{"key":346,"name":347,"field":330},"devsecops","DevSecOps",{"key":349,"name":350,"field":330},"blue-team-incident","Blue Team \u002F Incident",{"key":352,"name_tr":353,"name_en":354,"sort":355,"specializations":356},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[357,358,361,364,367],{"key":198,"name":199,"field":352},{"key":359,"name":360,"field":352},"test-automation","Test Automation",{"key":362,"name":363,"field":352},"sdet","SDET",{"key":365,"name":366,"field":352},"performance-testing","Performance Testing",{"key":368,"name":369,"field":352},"mobile-qa","Mobile QA",{"key":5,"name_tr":6,"name_en":6,"sort":371,"specializations":372},10,[373,374,375,376],{"key":198,"name":199,"field":5},{"key":96,"name":97,"field":5},{"key":100,"name":101,"field":5},{"key":103,"name":104,"field":5},{"key":378,"name_tr":379,"name_en":380,"sort":381,"specializations":382},"game-dev","Oyun Geliştirme","Game Development",11,[383,384,387,390,393,396],{"key":198,"name":199,"field":378},{"key":385,"name":386,"field":378},"unity-csharp","Unity (C#)",{"key":388,"name":389,"field":378},"unreal-cpp","Unreal (C++)",{"key":391,"name":392,"field":378},"gameplay","Gameplay",{"key":394,"name":395,"field":378},"graphics-rendering","Graphics \u002F Rendering",{"key":397,"name":398,"field":378},"multiplayer-netcode","Multiplayer \u002F Netcode",{"key":400,"name_tr":401,"name_en":401,"sort":402,"specializations":403},"ml-engineer","ML Engineer",12,[404,405],{"key":198,"name":199,"field":400},{"key":406,"name":407,"field":400},"classical-ml","Classical ML",[14,15,16],{"junior":410,"mid":412,"senior":413},{"questions":411,"median_sec":3},20,{"questions":411,"median_sec":3},{"questions":411,"median_sec":3},[10,415],"en",[417,418],"google","github",27600,true]