ดัชนีแบบฟอร์มในสถิติคืออะไร ดัชนี: แนวคิด ประเภท งานที่ต้องแก้ไข ดัชนีปริมาณและคุณภาพของตัวชี้วัด วิธีการคำนวณดัชนีหุ้น

วิธีดัชนีเป็นหนึ่งในวิธีการทั่วไป การวิเคราะห์ทางสถิติปรากฏการณ์ทางเศรษฐกิจ เราศึกษาโดยใช้ดัชนี เศรษฐกิจของประเทศโดยทั่วไปและแต่ละภาคส่วน ตลอดจนกิจกรรมขององค์กร สมาคม บริษัท ฟาร์ม ฯลฯ มีการเปิดเผยพลวัตของการพัฒนาปรากฏการณ์ทางเศรษฐกิจและสังคมการวิเคราะห์การดำเนินการตามแผนหรือบรรทัดฐาน มีการกำหนดอิทธิพลของปัจจัยส่วนบุคคลต่อผลลัพธ์โดยรวม มีการเปิดเผยปริมาณสำรองการผลิต มีการเปรียบเทียบอาณาเขตและระหว่างประเทศ ตัวชี้วัดทางเศรษฐกิจ.

ดัชนีในสถิติเรียกว่า ตัวบ่งชี้สัมพัทธ์ที่แสดงลักษณะความสัมพันธ์ในเวลาเปรียบเทียบกับแผนหรือในอวกาศของระดับปรากฏการณ์ทางเศรษฐกิจและสังคม

เนื่องจากดัชนีเป็นตัวบ่งชี้ที่สัมพันธ์กัน จึงได้มาจากอัตราส่วนของสองค่าเสมอ: การรายงาน (หรือปัจจุบัน) นั่นคือค่าที่ถูกเปรียบเทียบ และค่าพื้นฐาน นั่นคือ ค่าที่มีระดับของค่าการรายงาน ถูกเปรียบเทียบ หากนำระดับของปรากฏการณ์มาเป็นเกณฑ์ในการเปรียบเทียบ ช่วงที่ผ่านมาเวลา รับดัชนีไดนามิก หากใช้ระดับของปรากฏการณ์ในดินแดนอื่นเป็นพื้นฐานของการเปรียบเทียบ จะได้ดัชนีอาณาเขต

ในสูตร ระบบสมการ แบบจำลองทางเศรษฐศาสตร์และคณิตศาสตร์ ข้อมูลปัจจุบันจะมีหน่วยกำกับไว้ด้านล่างการกำหนดตัวอักษรของค่า ตัวอย่างเช่น: p1 และข้อมูลที่ใช้เป็นฐานการเปรียบเทียบจะมีเครื่องหมายศูนย์: p0 (ในทางคณิตศาสตร์ การกำหนดดังกล่าวเรียกว่าดัชนี ในสถิติเรียกว่าตัวห้อย) เช่นเดียวกับปริมาณสัมพัทธ์ใดๆ ดัชนีจะแสดงเป็นค่าสัมประสิทธิ์หากใช้ค่าหนึ่งเป็นฐาน หรือแสดงเป็นเปอร์เซ็นต์หากใช้หนึ่งร้อยเป็นฐาน

ปรากฏการณ์ทางเศรษฐกิจและสังคมที่ศึกษาโดยสถิติมักประกอบด้วยองค์ประกอบหลายประการ ดังนั้นผลผลิตรวมของผลิตภัณฑ์และบริการจึงรวมถึงมูลค่าของสินค้าและบริการขั้นสุดท้ายที่สร้างขึ้นโดยทุกประเภทที่มีการจัดระเบียบทางสังคม กิจกรรมทางเศรษฐกิจและในทุกภาคส่วนของเศรษฐกิจ กล่าวอีกนัยหนึ่งผลผลิตรวมของผลิตภัณฑ์และบริการประกอบด้วยหลายอย่าง แต่ละสายพันธุ์สินค้าและบริการ.

ดัชนีจะถูกคำนวณทั้งสำหรับองค์ประกอบแต่ละส่วนของปรากฏการณ์ที่ซับซ้อนและสำหรับปรากฏการณ์ที่ซับซ้อนทั้งหมดโดยรวม ในกรณีแรกพวกเขาจะเรียกว่า รายบุคคล

และถูกกำหนดด้วยตัวอักษรละติน i และในวินาที - ทั่วไป

และเขียนแทนด้วย I ดัชนีแต่ละรายการประกอบด้วยดัชนีที่แสดงลักษณะการเปลี่ยนแปลงในผลผลิตของผลิตภัณฑ์ประเภทใดประเภทหนึ่ง (ดัชนีการถลุงเหล็ก การผลิตปุ๋ยโปแตช การผลิตโทรทัศน์ ฯลฯ) ดัชนีที่แสดงลักษณะการเปลี่ยนแปลงในราคาของผลิตภัณฑ์ใด ๆ (จักรยาน ซีเมนต์ เนื้อวัว ฯลฯ ) ต้นทุนของผลิตภัณฑ์แต่ละรายการ ฯลฯ

ดัชนีที่คำนวณสำหรับปรากฏการณ์ที่ซับซ้อนทั้งหมด เช่น ทั่วไป รวมถึงดัชนีที่แสดงลักษณะการเปลี่ยนแปลงของผลผลิตของผลิตภัณฑ์ทั้งหมดขององค์กร อุตสาหกรรม ฯลฯ การเปลี่ยนแปลงของราคาสำหรับกลุ่มสินค้าหรือสินค้าทั้งหมด หรือชุดของ สินค้าและบริการด้านอาหารและไม่ใช่อาหารรวมอยู่ใน "ตะกร้าผู้บริโภค" การเปลี่ยนแปลงของต้นทุนของผลิตภัณฑ์จำนวนหนึ่ง

เพื่อความสะดวกในการสร้างดัชนีในทฤษฎีสถิติจึงมีการพัฒนาสัญลักษณ์เช่น แต่ละค่าที่วิเคราะห์มีการกำหนดของตัวเอง ดังนั้นจำนวนหน่วยของประเภทการผลิตที่กำหนดหรือ สินค้าที่ขายแสดงโดย - q, ราคาของหน่วยผลิตภัณฑ์ - p, ต้นทุนของหน่วยผลิตภัณฑ์ - z, ความเข้มแรงงานของหน่วยผลิตภัณฑ์ - t, ผลผลิตต่อคนงาน - w, ปริมาณการใช้วัสดุเฉพาะ (เชื้อเพลิง) เช่น การบริโภค วัสดุ (เชื้อเพลิง) ต่อหน่วยผลิตภัณฑ์ - ม. เป็นต้น

ดังนั้นดัชนีฟิสิคัลวอลุ่มแต่ละรายการจะมีรูปแบบดังนี้

สูตรสำหรับดัชนีราคาแต่ละรายการจะเป็น:

และดัชนีต้นทุนรายบุคคล:

การจำแนกดัชนี:

ดัชนีทั่วไป

ใช้เพื่อเปรียบเทียบปรากฏการณ์ที่ต่างกันและไม่สามารถเทียบเคียงได้โดยตรง ตัวอย่างเช่น การใช้ดัชนีทั่วไป คุณสามารถระบุลักษณะการเปลี่ยนแปลงของผลผลิตของอุตสาหกรรมทั้งหมดหรือการเปลี่ยนแปลงของปริมาณของผลิตภัณฑ์ทั้งหมดที่ผลิตในโรงงานเฟอร์นิเจอร์ที่ผลิต ประเภทต่างๆสินค้า : โต๊ะ อาร์มแชร์ โซฟา ตู้ อย่างไรก็ตาม คุณไม่สามารถรวมปริมาณของผลิตภัณฑ์ประเภทต่างๆ เข้าด้วยกันเป็นเวลาสองช่วงเวลาและระบุแหล่งที่มาของจำนวนเหล่านี้ให้กันและกันได้ การรวมดังกล่าวไม่มีความหมายไม่เพียงเพราะหน่วยการวัดที่แตกต่างกัน (ตัน ชิ้น เมตร ฯลฯ) แต่ยังเป็นเพราะผลิตภัณฑ์แต่ละประเภทมีวัตถุประสงค์ของตัวเองและผลิตขึ้นด้วยต้นทุนเงินทุนและเวลาที่จำเป็นทางสังคมที่แตกต่างกัน

หากต้องการเปรียบเทียบปรากฏการณ์ที่ไม่สามารถเทียบเคียงได้ (หรือองค์ประกอบ) คุณจำเป็นต้องแสดงออกมา มาตรการทั่วไป; ต้นทุน ค่าแรง ฯลฯ ปัญหานี้แก้ไขได้ด้วยการสร้างและคำนวณดัชนีทั่วไป รูปแบบหลักของดัชนีทั่วไปคือดัชนีรวม

ดัชนีเป็นค่าสัมพัทธ์เชิงเปรียบเทียบที่แสดงลักษณะการเปลี่ยนแปลงของตัวบ่งชี้ทางเศรษฐกิจและสังคมที่ซับซ้อน (ตัวบ่งชี้ที่ประกอบด้วยองค์ประกอบที่ไม่สามารถสรุปได้) ในเวลา พื้นที่ เมื่อเปรียบเทียบกับแผน

ดัชนีเป็นผลจากการเปรียบเทียบตัวบ่งชี้สองตัวที่มีชื่อเดียวกัน ในการคำนวณซึ่งจำเป็นต้องแยกแยะระหว่างตัวเศษของอัตราส่วนดัชนี (ระดับการเปรียบเทียบหรือการรายงาน) และตัวส่วนของอัตราส่วนดัชนี (ฐาน ระดับที่ทำการเปรียบเทียบ) การเลือกฐานขึ้นอยู่กับวัตถุประสงค์ของการศึกษา หากมีการศึกษาไดนามิก ขนาดของตัวบ่งชี้ในช่วงเวลาก่อนรอบระยะเวลาการรายงานสามารถใช้เป็นค่าฐานได้ หากจำเป็นต้องทำการเปรียบเทียบอาณาเขต ข้อมูลจากดินแดนอื่นก็สามารถใช้เป็นฐานได้ ตัวบ่งชี้ที่วางแผนไว้สามารถใช้เป็นพื้นฐานในการเปรียบเทียบได้หากจำเป็นต้องใช้ดัชนีเป็นตัวบ่งชี้ในการดำเนินการตามแผน

ดัชนีเป็นตัวชี้วัดทางเศรษฐกิจที่สำคัญที่สุด เศรษฐกิจของประเทศและอุตสาหกรรมแต่ละอย่าง ตัวบ่งชี้ดัชนีทำให้สามารถวิเคราะห์ประสิทธิภาพขององค์กรและองค์กรที่ผลิตผลิตภัณฑ์ที่หลากหลายหรือมีส่วนร่วมในกิจกรรมประเภทต่างๆ เมื่อใช้ดัชนี คุณสามารถติดตามบทบาทของแต่ละปัจจัยในการก่อตัวของตัวชี้วัดทางเศรษฐกิจที่สำคัญที่สุดและระบุปริมาณสำรองการผลิตหลัก ดัชนีถูกนำมาใช้กันอย่างแพร่หลายในการเปรียบเทียบตัวชี้วัดทางเศรษฐกิจระหว่างประเทศในการกำหนดมาตรฐานการครองชีพ กิจกรรมทางธุรกิจ นโยบายการกำหนดราคา ฯลฯ

มีสองวิธีในการตีความความสามารถของตัวบ่งชี้ดัชนี: การสรุป (สังเคราะห์) และการวิเคราะห์ ซึ่งจะถูกกำหนดโดยงานที่แตกต่างกัน

สาระสำคัญของแนวทางทั่วไปคือการตีความดัชนีว่าเป็นตัวบ่งชี้การเปลี่ยนแปลงโดยเฉลี่ยในระดับของปรากฏการณ์ที่กำลังศึกษา. ในกรณีนี้ งานหลักที่แก้ไขได้โดยใช้ตัวบ่งชี้ดัชนีคือการระบุลักษณะการเปลี่ยนแปลงโดยรวมในตัวบ่งชี้ทางเศรษฐกิจแบบหลายปัจจัย

วิธีการวิเคราะห์ถือว่าดัชนีเป็นตัวบ่งชี้การเปลี่ยนแปลงในระดับของค่าผลลัพธ์ซึ่งได้รับอิทธิพลจากปริมาณที่ศึกษาโดยใช้ดัชนี ดังนั้นอีกงานหนึ่งที่แก้ไขได้โดยใช้ตัวบ่งชี้ดัชนี: เพื่อเน้นอิทธิพลของหนึ่งในปัจจัยในการเปลี่ยนแปลงตัวบ่งชี้หลายปัจจัย

ตามระดับความครอบคลุมขององค์ประกอบของปรากฏการณ์ ดัชนีจะแบ่งออกเป็นรายบุคคลและทั่วไป (สรุป)

ดัชนีส่วนบุคคล(i) เป็นดัชนีที่แสดงลักษณะการเปลี่ยนแปลงของประชากรเพียงองค์ประกอบเดียว

ดัชนีทั่วไป (คอมโพสิต)(I) แสดงถึงการเปลี่ยนแปลงในองค์ประกอบทั้งชุดของปรากฏการณ์ที่ซับซ้อน หากดัชนีครอบคลุมเพียงส่วนหนึ่งของปรากฏการณ์ ก็จะเรียกว่าดัชนีกลุ่ม ขึ้นอยู่กับวิธีการศึกษา ดัชนีทั่วไปสามารถสร้างเป็นดัชนีรวม (จากภาษาละติน aggrega - ฉันเพิ่ม) หรือเป็นดัชนีถ่วงน้ำหนักเฉลี่ย (ค่าเฉลี่ยของแต่ละดัชนี)

วิธีการก่อสร้าง ดัชนีรวมอยู่ในความจริงที่ว่าด้วยความช่วยเหลือของผู้วัดร่วมที่เรียกว่าสามารถแสดงมูลค่ารวมของชุดที่ซับซ้อนในช่วงเวลาการรายงานและฐานแล้วเปรียบเทียบค่าแรกกับค่าที่สอง

ในสถิติ ดัชนีขององค์ประกอบตัวแปรและคงที่มีความสำคัญอย่างยิ่ง ซึ่งใช้ในการวิเคราะห์ไดนามิกของตัวบ่งชี้เฉลี่ย

ดัชนีองค์ประกอบตัวแปรเรียกว่าอัตราส่วนของระดับเฉลี่ยสองระดับ

มีค่าเฉลี่ยของแต่ละดัชนี คำนวณเป็นอัตราส่วนของค่าเฉลี่ยมาตรฐานสองค่า โดยที่อิทธิพลของการเปลี่ยนแปลงในปัจจัยโครงสร้างถูกกำจัดออกไป ดังนั้นดัชนีนี้จึงเรียกว่าดัชนีองค์ประกอบคงที่

ขึ้นอยู่กับลักษณะและเนื้อหาของค่าดัชนีที่มีอยู่ ดัชนีเชิงปริมาณ(ปริมาณ) ตัวบ่งชี้และ ดัชนีตัวบ่งชี้คุณภาพ.

ถึง ดัชนีตัวชี้วัดเชิงปริมาณ (ปริมาณ)รวมถึงดัชนีเช่นดัชนีปริมาณทางกายภาพของการผลิตต้นทุนการผลิตต้นทุนการผลิตตลอดจนดัชนีตัวบ่งชี้ขนาดที่กำหนดโดยค่าสัมบูรณ์ มีการใช้ดัชนีเชิงปริมาณประเภทต่างๆ

(FOP) สะท้อนถึงการเปลี่ยนแปลงของผลผลิต

ดัชนี FOP แต่ละรายการสะท้อนถึงการเปลี่ยนแปลงในผลลัพธ์ของผลิตภัณฑ์ประเภทหนึ่งและถูกกำหนดโดยสูตร

โดยที่ q 1 และ q 0 คือปริมาณของผลิตภัณฑ์ประเภทที่กำหนดในแง่กายภาพในช่วงเวลาปัจจุบันและรอบระยะเวลาฐาน

ดัชนีรวม FOP (เสนอโดย E. Laspeyres) สะท้อนถึงการเปลี่ยนแปลงในผลผลิตของผลิตภัณฑ์ทั้งชุด โดยที่ค่าดัชนีคือปริมาณของผลิตภัณฑ์ q และผู้วัดร่วมคือราคา p:

(10.2)

โดยที่ q 1 และ q 0 คือจำนวนหน่วยที่ผลิตของผลิตภัณฑ์แต่ละประเภทตามลำดับในช่วงเวลาการรายงานและรอบระยะเวลาฐาน p 0 คือราคาของหน่วยการผลิต (ประเภทแยกต่างหาก) ในช่วงเวลาฐาน

เมื่อคำนวณดัชนี FOP ยังสามารถใช้ต้นทุนการผลิตหรือความเข้มข้นของแรงงานเป็นตัวตรวจวัดร่วมได้อีกด้วย

ดัชนี FOP แบบถ่วงน้ำหนักโดยเฉลี่ยจะใช้หากทราบดัชนีปริมาณแต่ละรายการสำหรับผลิตภัณฑ์แต่ละประเภทและต้นทุนของผลิตภัณฑ์แต่ละประเภท (หรือต้นทุน) ในฐานหรือรอบระยะเวลาการรายงาน

ค่าเฉลี่ยเลขคณิตถ่วงน้ำหนัก FOP ถูกกำหนดโดยสูตร

(10.3)

โดยที่ i q คือดัชนีเฉพาะสำหรับผลิตภัณฑ์แต่ละประเภท q 0 p 0 - ต้นทุนของผลิตภัณฑ์แต่ละประเภทในช่วงเวลาฐาน

ดัชนีฮาร์มอนิกถ่วงน้ำหนักเฉลี่ยสอพ

(10.4)

โดยที่ q 1 p 1 คือต้นทุนของผลิตภัณฑ์แต่ละประเภทในช่วงเวลาปัจจุบัน

คำนวณในทำนองเดียวกัน ดัชนีต้นทุนการผลิต(ZEP) ซึ่งสะท้อนถึงการเปลี่ยนแปลงของต้นทุนการผลิตและสามารถเป็นแบบรายบุคคลหรือแบบรวมก็ได้

ดัชนีส่วนบุคคล ZEP สะท้อนถึงการเปลี่ยนแปลงต้นทุนการผลิตประเภทหนึ่งและถูกกำหนดโดยสูตร

(10.5)

โดยที่ z 1 และ z 0 คือต้นทุนต่อหน่วยการผลิตของประเภทที่ต้องการในช่วงเวลาปัจจุบันและฐาน q 1 z 1 และ q 0 z 0 - ผลรวมของต้นทุนสำหรับการผลิตผลิตภัณฑ์ประเภทที่ต้องการในช่วงเวลาปัจจุบันและรอบระยะเวลาฐาน

ดัชนีรวม VEP แสดงลักษณะของการเปลี่ยนแปลง จำนวนเงินทั้งหมดต้นทุนการผลิตเนื่องจากการเปลี่ยนแปลงในปริมาณของผลิตภัณฑ์ที่ผลิตและราคาต้นทุนและถูกกำหนดโดยสูตร

(10.6)

โดยที่ q 1 z 1 และ q 0 z 0 คือต้นทุนการผลิตผลิตภัณฑ์แต่ละประเภทตามลำดับในรอบระยะเวลาการรายงานและรอบระยะเวลาฐาน

ลองพิจารณาการสร้างดัชนีต้นทุนผลิตภัณฑ์ (SP) ซึ่งสามารถกำหนดได้ทั้งแบบรายบุคคลและแบบรวม

ดัชนีส่วนบุคคล SP ระบุลักษณะการเปลี่ยนแปลงต้นทุนของผลิตภัณฑ์ประเภทนี้และมีรูปแบบ:

(10.7)

โดยที่ p 1 และ p 0 - ราคาของหน่วยการผลิตประเภทที่กำหนดในช่วงเวลาปัจจุบันและฐาน q 1 p 1 และ q 0 p 0 - ต้นทุนของผลิตภัณฑ์ประเภทนี้ในช่วงเวลาปัจจุบันและรอบระยะเวลาฐาน

ดัชนีรวม SP (มูลค่าการซื้อขาย) แสดงถึงการเปลี่ยนแปลงของต้นทุนการผลิตทั้งหมดเนื่องจากการเปลี่ยนแปลงในปริมาณของผลิตภัณฑ์และราคาและถูกกำหนดโดยสูตร

(10.8)

ดัชนีตัวชี้วัดคุณภาพ การวิเคราะห์ปัจจัย

ตัวบ่งชี้เชิงคุณภาพจะกำหนดระดับของตัวบ่งชี้สุดท้ายที่กำลังศึกษาและถูกกำหนดโดยอัตราส่วนของตัวบ่งชี้สุดท้ายและตัวบ่งชี้เชิงปริมาณที่แน่นอน (เช่น ค่าเฉลี่ย ค่าจ้างกำหนดโดยอัตราส่วนของกองทุนค่าจ้างและจำนวนลูกจ้าง) ดัชนีตัวชี้วัดคุณภาพประกอบด้วยดัชนีราคา ต้นทุน ค่าจ้างเฉลี่ย และผลิตภาพแรงงาน

ดัชนีที่พบบ่อยที่สุดในกลุ่มนี้คือดัชนีราคา

ดัชนีราคารายบุคคลระบุลักษณะการเปลี่ยนแปลงราคาสำหรับผลิตภัณฑ์ประเภทหนึ่งและกำหนดโดยสูตร

โดยที่ p 1 และ p 0 คือราคาต่อหน่วยการผลิตในช่วงเวลาปัจจุบันและช่วงฐาน

ดังนั้นดัชนีต้นทุนและเวลาแรงงานจึงถูกกำหนดให้กับผลิตภัณฑ์แต่ละประเภท

ดัชนีราคารวมกำหนดการเปลี่ยนแปลงโดยเฉลี่ยของราคา p สำหรับชุดของผลิตภัณฑ์บางประเภท q

เพื่อระบุลักษณะการเปลี่ยนแปลงโดยเฉลี่ยของราคาสินค้าอุปโภคบริโภคให้ใช้ดัชนีราคาที่เสนอโดย E. Laspeyres ( ดัชนี ลาสปายร์ส):

(10.10)

โดยที่คิว 0 - ตะกร้าผู้บริโภค(ช่วงฐาน); p 0 และ p 1 คือราคาของฐานและรอบระยะเวลารายงานตามลำดับ

หากใช้ปริมาณของชุดผลิตภัณฑ์ในระดับระยะเวลาการรายงาน (q 1) ในกรณีนี้ ดัชนีราคาจะเรียกว่าดัชนี Paasche:

(10.11)

หากทราบดัชนีราคาแต่ละรายการสำหรับผลิตภัณฑ์แต่ละประเภทและต้นทุนของผลิตภัณฑ์แต่ละประเภท ระบบจะใช้ดัชนีราคาเฉลี่ยถ่วงน้ำหนัก (ดัชนีราคาเฉลี่ยเลขคณิตถ่วงน้ำหนักและดัชนีราคาเฉลี่ยฮาร์มอนิกถ่วงน้ำหนัก)

สูตร ดัชนีราคาเลขคณิตถัวเฉลี่ยถ่วงน้ำหนัก

(10.12)

โดยที่ i เป็นดัชนีเฉพาะสำหรับผลิตภัณฑ์แต่ละประเภท p 0 q 0 - ต้นทุนของผลิตภัณฑ์แต่ละประเภทในช่วงเวลาฐาน

สูตร ดัชนีราคาฮาร์มอนิกถัวเฉลี่ยถ่วงน้ำหนัก

(10.13)

โดยที่ p 1 q 1 คือต้นทุนของผลิตภัณฑ์แต่ละประเภทในช่วงเวลาปัจจุบัน

ในทางปฏิบัติทางสถิติมีการใช้ดัชนีราคาอาณาเขตรวมอย่างกว้างขวางซึ่งสามารถคำนวณได้โดยใช้สูตรต่อไปนี้:

(10.14)

โดยที่ p A p B คือ ราคาต่อหน่วยของผลิตภัณฑ์แต่ละประเภทตามลำดับในพื้นที่ A และ B q A - จำนวนที่ผลิตหรือขายผลิตภัณฑ์แต่ละประเภทในอาณาเขต A (ในแง่กายภาพ)

สูตรแสดงให้เห็นว่าในดัชนีนี้ปริมาณการผลิตของดินแดน A ถือเป็นตัวบ่งชี้คงที่ (น้ำหนัก) เมื่อคำนวณดัชนีนี้ปริมาณการผลิตของดินแดน B หรือปริมาณการผลิตรวมของสองดินแดนก็สามารถนำมาใช้ได้เช่นกัน เป็นน้ำหนัก

มีสองวิธีที่เป็นไปได้ในการคำนวณดัชนี: แบบลูกโซ่และแบบพื้นฐาน

ดัชนีลูกโซ่ได้มาจากการเปรียบเทียบระดับปัจจุบันกับระดับก่อนหน้า ในขณะที่ฐานการเปรียบเทียบมีการเปลี่ยนแปลงอยู่ตลอดเวลา

หนึ่งในวิธีที่สำคัญที่สุดในการบรรลุผลผลิตที่สูง เซิร์ฟเวอร์ SQLคือการใช้ดัชนี ดัชนีจะเร่งกระบวนการสืบค้นให้เร็วขึ้นโดยให้การเข้าถึงแถวข้อมูลในตารางได้อย่างรวดเร็ว เหมือนกับดัชนีในหนังสือที่ช่วยให้คุณค้นหาข้อมูลที่ต้องการได้อย่างรวดเร็ว ในบทความนี้ผมจะให้ภาพรวมโดยย่อของดัชนีต่างๆ เซิร์ฟเวอร์ SQLและอธิบายวิธีการจัดระเบียบฐานข้อมูลและวิธีที่ช่วยเร่งการสืบค้นฐานข้อมูล

ดัชนีจะถูกสร้างขึ้นในคอลัมน์ตารางและมุมมอง ดัชนีเป็นวิธีการค้นหาข้อมูลอย่างรวดเร็วตามค่าในคอลัมน์เหล่านั้น ตัวอย่างเช่น หากคุณสร้างดัชนีบนคีย์หลักแล้วค้นหาแถวข้อมูลโดยใช้ค่าคีย์หลัก จากนั้น เซิร์ฟเวอร์ SQLจะค้นหาค่าดัชนีก่อนแล้วจึงใช้ดัชนีเพื่อค้นหาข้อมูลทั้งแถวอย่างรวดเร็ว หากไม่มีดัชนี ระบบจะดำเนินการสแกนแถวทั้งหมดในตารางโดยสมบูรณ์ ซึ่งอาจมีผลกระทบต่อประสิทธิภาพอย่างมาก
คุณสามารถสร้างดัชนีบนคอลัมน์ส่วนใหญ่ในตารางหรือมุมมองได้ ข้อยกเว้นส่วนใหญ่เป็นคอลัมน์ที่มีชนิดข้อมูลสำหรับจัดเก็บวัตถุขนาดใหญ่ ( ลอบ), เช่น ภาพ, ข้อความหรือ วาร์ชาร์ (สูงสุด). คุณยังสามารถสร้างดัชนีบนคอลัมน์ที่ออกแบบมาเพื่อจัดเก็บข้อมูลในรูปแบบได้ XMLแต่ดัชนีเหล่านี้มีโครงสร้างแตกต่างจากดัชนีมาตรฐานเล็กน้อย และการพิจารณาอยู่นอกเหนือขอบเขตของบทความนี้ นอกจากนี้บทความไม่ได้กล่าวถึง ร้านขายคอลัมน์ดัชนี แต่ฉันมุ่งเน้นไปที่ดัชนีเหล่านั้นที่ใช้บ่อยที่สุดในฐานข้อมูลแทน เซิร์ฟเวอร์ SQL.
ดัชนีประกอบด้วยชุดของหน้า โหนดดัชนี ซึ่งจัดอยู่ในโครงสร้างแบบต้นไม้ - ต้นไม้ที่สมดุล. โครงสร้างนี้เป็นโครงสร้างแบบลำดับชั้นและเริ่มต้นด้วยโหนดรูทที่ด้านบนสุดของลำดับชั้นและโหนดลีฟ ซึ่งอยู่ด้านล่าง ดังแสดงในรูป:


เมื่อคุณสืบค้นคอลัมน์ที่จัดทำดัชนีแล้ว โปรแกรมสืบค้นจะเริ่มต้นที่ด้านบนของโหนดรากและดำเนินการลงไปตามโหนดระดับกลาง โดยแต่ละเลเยอร์ระดับกลางจะมีข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับข้อมูล โปรแกรมสืบค้นยังคงเคลื่อนที่ผ่านโหนดดัชนีจนกว่าจะถึงระดับล่างสุดโดยที่ดัชนีออก ตัวอย่างเช่น หากคุณกำลังมองหาค่า 123 ในคอลัมน์ที่จัดทำดัชนี กลไกการค้นหาจะกำหนดเพจที่ระดับกลางแรกที่ระดับรูทก่อน ในกรณีนี้ หน้าแรกชี้ไปที่ค่าตั้งแต่ 1 ถึง 100 และหน้าแรกชี้ไปที่ค่าตั้งแต่ 101 ถึง 200 ดังนั้นเครื่องมือค้นหาจะเข้าถึงหน้าที่สองของระดับกลางนี้ ต่อไปคุณจะเห็นว่าคุณควรเปิดไปยังหน้าที่สามของระดับกลางถัดไป จากจุดนี้ ระบบย่อยเคียวรีจะอ่านค่าของดัชนีเองในระดับที่ต่ำกว่า ใบดัชนีอาจมีข้อมูลตารางเองหรือเพียงตัวชี้ไปยังแถวที่มีข้อมูลในตาราง ขึ้นอยู่กับประเภทของดัชนี: ดัชนีแบบคลัสเตอร์หรือดัชนีแบบไม่คลัสเตอร์

ดัชนีแบบคลัสเตอร์
ดัชนีแบบคลัสเตอร์จะจัดเก็บแถวข้อมูลจริงไว้ในส่วนท้ายของดัชนี ย้อนกลับไปที่ตัวอย่างก่อนหน้า ซึ่งหมายความว่าแถวของข้อมูลที่เกี่ยวข้องกับค่าคีย์ 123 จะถูกจัดเก็บไว้ในดัชนีเอง ลักษณะสำคัญดัชนีแบบคลัสเตอร์คือค่าทั้งหมดจะถูกจัดเรียงตามลำดับเฉพาะจากน้อยไปหามากหรือจากมากไปน้อย ดังนั้นตารางหรือมุมมองสามารถมีดัชนีคลัสเตอร์ได้เพียงดัชนีเดียวเท่านั้น นอกจากนี้ ควรสังเกตว่าข้อมูลในตารางจะถูกจัดเก็บในรูปแบบที่เรียงลำดับเฉพาะเมื่อมีการสร้างดัชนีคลัสเตอร์ในตารางนี้
ตารางที่ไม่มีดัชนีแบบคลัสเตอร์เรียกว่าฮีป
ดัชนีที่ไม่ใช่คลัสเตอร์
ต่างจากดัชนีแบบคลัสเตอร์ ใบไม้ของดัชนีที่ไม่เป็นคลัสเตอร์จะมีเฉพาะคอลัมน์เหล่านั้น ( สำคัญ) ซึ่งกำหนดดัชนีนี้และยังมีตัวชี้ไปยังแถวที่มีข้อมูลจริงในตาราง ซึ่งหมายความว่าระบบสืบค้นย่อยต้องมีการดำเนินการเพิ่มเติมเพื่อค้นหาและดึงข้อมูลที่ต้องการ เนื้อหาของตัวชี้ข้อมูลขึ้นอยู่กับวิธีการจัดเก็บข้อมูล: ตารางคลัสเตอร์หรือฮีป หากตัวชี้ชี้ไปที่ตารางแบบคลัสเตอร์ จะชี้ไปที่ดัชนีแบบคลัสเตอร์ที่สามารถใช้เพื่อค้นหาข้อมูลจริงได้ หากตัวชี้อ้างถึงฮีป มันจะชี้ไปยังตัวระบุแถวข้อมูลเฉพาะ ดัชนีที่ไม่เป็นคลัสเตอร์ไม่สามารถจัดเรียงเหมือนดัชนีแบบคลัสเตอร์ได้ แต่คุณสามารถสร้างดัชนีที่ไม่เป็นคลัสเตอร์ได้มากกว่าหนึ่งดัชนีบนตารางหรือมุมมอง สูงสุด 999 รายการ นี่ไม่ได้หมายความว่าคุณควรสร้างดัชนีให้ได้มากที่สุดเท่าที่จะเป็นไปได้ ดัชนีสามารถปรับปรุงหรือลดประสิทธิภาพของระบบได้ นอกจากจะสามารถสร้างดัชนีที่ไม่ใช่คลัสเตอร์ได้หลายรายการแล้ว คุณยังสามารถรวมคอลัมน์เพิ่มเติมได้ ( รวมคอลัมน์) ลงในดัชนี: ใบของดัชนีจะเก็บไม่เพียงแต่ค่าของคอลัมน์ที่จัดทำดัชนีเท่านั้น แต่ยังรวมถึงค่าของคอลัมน์เพิ่มเติมที่ไม่ได้จัดทำดัชนีเหล่านี้ด้วย วิธีการนี้จะช่วยให้คุณสามารถข้ามข้อจำกัดบางประการที่อยู่ในดัชนีได้ ตัวอย่างเช่น คุณสามารถรวมคอลัมน์ที่ไม่สามารถจัดทำดัชนีได้หรือข้ามขีดจำกัดความยาวดัชนี (ในกรณีส่วนใหญ่ 900 ไบต์)

ประเภทของดัชนี

นอกเหนือจากการเป็นดัชนีแบบคลัสเตอร์หรือแบบไม่คลัสเตอร์แล้ว ยังสามารถกำหนดค่าเพิ่มเติมเป็นดัชนีรวม ดัชนีเฉพาะ หรือดัชนีที่ครอบคลุมได้
ดัชนีคอมโพสิต
ดัชนีดังกล่าวสามารถมีได้มากกว่าหนึ่งคอลัมน์ คุณสามารถรวมคอลัมน์ในดัชนีได้สูงสุด 16 คอลัมน์ แต่ความยาวรวมจะจำกัดอยู่ที่ 900 ไบต์ สามารถประกอบดัชนีทั้งแบบคลัสเตอร์และแบบไม่คลัสเตอร์ได้
ดัชนีที่ไม่ซ้ำ
ดัชนีนี้ช่วยให้แน่ใจว่าแต่ละค่าในคอลัมน์ที่จัดทำดัชนีไม่ซ้ำกัน หากดัชนีเป็นแบบรวม ความเป็นเอกลักษณ์จะมีผลกับคอลัมน์ทั้งหมดในดัชนี แต่ไม่ใช่กับแต่ละคอลัมน์ ตัวอย่างเช่น หากคุณสร้างดัชนีเฉพาะในคอลัมน์ ชื่อและ นามสกุลดังนั้นชื่อเต็มจะต้องไม่ซ้ำกัน แต่ชื่อหรือนามสกุลซ้ำกันได้
ดัชนีเฉพาะจะถูกสร้างขึ้นโดยอัตโนมัติเมื่อคุณกำหนดข้อจำกัดของคอลัมน์: คีย์หลักหรือข้อจำกัดค่าเฉพาะ:
  • คีย์หลัก
    เมื่อคุณกำหนดข้อจำกัดของคีย์หลักในหนึ่งคอลัมน์ขึ้นไป เซิร์ฟเวอร์ SQLสร้างดัชนีคลัสเตอร์ที่ไม่ซ้ำกันโดยอัตโนมัติหากไม่ได้สร้างดัชนีคลัสเตอร์ก่อนหน้านี้ (ในกรณีนี้ ดัชนีที่ไม่ใช่คลัสเตอร์จะถูกสร้างขึ้นบนคีย์หลัก)
  • ความเป็นเอกลักษณ์ของค่านิยม
    เมื่อคุณกำหนดข้อจำกัดเกี่ยวกับเอกลักษณ์ของค่านิยมแล้ว เซิร์ฟเวอร์ SQLสร้างดัชนีที่ไม่ใช่คลัสเตอร์ที่ไม่ซ้ำกันโดยอัตโนมัติ คุณสามารถระบุได้ว่าจะสร้างดัชนีคลัสเตอร์ที่ไม่ซ้ำกันหากยังไม่มีการสร้างดัชนีคลัสเตอร์บนตาราง
ดัชนีการครอบคลุม
ดัชนีดังกล่าวช่วยให้แบบสอบถามเฉพาะสามารถรับข้อมูลที่จำเป็นทั้งหมดได้ทันทีจากส่วนย่อยของดัชนีโดยไม่ต้องเข้าถึงบันทึกของตารางเพิ่มเติม

การออกแบบดัชนี

แม้ว่าดัชนีจะมีประโยชน์พอๆ กัน แต่ก็ต้องได้รับการออกแบบอย่างระมัดระวัง เนื่องจากดัชนีสามารถใช้พื้นที่ดิสก์จำนวนมาก คุณจึงไม่ต้องการสร้างดัชนีเพิ่มเติมเกินความจำเป็น นอกจากนี้ ดัชนีจะได้รับการอัปเดตโดยอัตโนมัติเมื่อมีการอัปเดตแถวข้อมูล ซึ่งอาจนำไปสู่ค่าใช้จ่ายด้านทรัพยากรเพิ่มเติมและประสิทธิภาพการทำงานลดลง เมื่อออกแบบดัชนี จะต้องคำนึงถึงข้อควรพิจารณาหลายประการเกี่ยวกับฐานข้อมูลและการสืบค้นด้วย
ฐานข้อมูล
ตามที่ระบุไว้ก่อนหน้านี้ ดัชนีสามารถปรับปรุงประสิทธิภาพของระบบได้เนื่องจาก พวกเขาให้เครื่องมือสืบค้นด้วยวิธีที่รวดเร็วในการค้นหาข้อมูล อย่างไรก็ตาม คุณควรคำนึงถึงความถี่ที่คุณตั้งใจจะแทรก อัปเดต หรือลบข้อมูลด้วย เมื่อคุณเปลี่ยนข้อมูล ดัชนีจะต้องเปลี่ยนด้วยเพื่อให้สะท้อนถึงการดำเนินการที่เกี่ยวข้องกับข้อมูล ซึ่งสามารถลดประสิทธิภาพของระบบได้อย่างมาก พิจารณาแนวทางต่อไปนี้เมื่อวางแผนกลยุทธ์การจัดทำดัชนีของคุณ:
  • สำหรับตารางที่มีการอัปเดตบ่อยครั้ง ให้ใช้ดัชนีน้อยที่สุด
  • หากตารางมีข้อมูลจำนวนมากแต่มีการเปลี่ยนแปลงเล็กน้อย ให้ใช้ดัชนีให้มากเท่าที่จำเป็นเพื่อปรับปรุงประสิทธิภาพการสืบค้นของคุณ อย่างไรก็ตาม ควรคิดให้รอบคอบก่อนที่จะใช้ดัชนีบนโต๊ะขนาดเล็ก เพราะ... อาจเป็นไปได้ว่าการใช้การค้นหาดัชนีอาจใช้เวลานานกว่าการสแกนแถวทั้งหมด
  • สำหรับดัชนีแบบคลัสเตอร์ พยายามทำให้ฟิลด์สั้นที่สุด แนวทางที่ดีที่สุดคือการใช้ดัชนีแบบคลัสเตอร์ในคอลัมน์ที่มีค่าไม่ซ้ำกันและไม่อนุญาตให้มีค่า NULL นี่คือเหตุผลว่าทำไมคีย์หลักจึงมักถูกใช้เป็นดัชนีแบบคลัสเตอร์
  • ความเป็นเอกลักษณ์ของค่าในคอลัมน์ส่งผลต่อประสิทธิภาพของดัชนี ใน กรณีทั่วไปยิ่งคุณมีข้อมูลซ้ำในคอลัมน์มากเท่าใด ดัชนีก็จะยิ่งทำงานได้แย่ลงเท่านั้น ในทางกลับกัน ยิ่งมีค่าที่ไม่ซ้ำกันมากเท่าใด ประสิทธิภาพของดัชนีก็จะยิ่งดีขึ้นเท่านั้น ใช้ดัชนีที่ไม่ซ้ำกันทุกครั้งที่เป็นไปได้
  • สำหรับดัชนีผสม ให้คำนึงถึงลำดับของคอลัมน์ในดัชนีด้วย คอลัมน์ที่ใช้ในนิพจน์ ที่ไหน(ตัวอย่างเช่น, WHERE FirstName = "ชาร์ลี") จะต้องอยู่อันดับแรกในดัชนี คอลัมน์ถัดไปควรแสดงรายการตามความเป็นเอกลักษณ์ของค่า (คอลัมน์ที่มีค่าไม่ซ้ำกันสูงสุดมาก่อน)
  • คุณยังสามารถระบุดัชนีในคอลัมน์จากการคำนวณได้หากตรงตามข้อกำหนดบางประการ ตัวอย่างเช่น นิพจน์ที่ใช้เพื่อให้ได้ค่าของคอลัมน์จะต้องถูกกำหนดไว้ (ส่งคืนผลลัพธ์เดียวกันเสมอสำหรับชุดพารามิเตอร์อินพุตที่กำหนด)
แบบสอบถามฐานข้อมูล
ข้อควรพิจารณาอีกประการหนึ่งเมื่อออกแบบดัชนีคือคิวรีใดที่รันกับฐานข้อมูล ตามที่ระบุไว้ข้างต้น คุณต้องพิจารณาว่าข้อมูลมีการเปลี่ยนแปลงบ่อยเพียงใด นอกจากนี้ ควรใช้หลักการต่อไปนี้:
  • พยายามแทรกหรือแก้ไขแถวให้ได้มากที่สุดในแบบสอบถามเดียว แทนที่จะทำในแบบสอบถามเดียวหลายรายการ
  • สร้างดัชนีที่ไม่เป็นคลัสเตอร์ในคอลัมน์ที่มักใช้เป็นคำค้นหาในข้อความค้นหาของคุณ ที่ไหนและการเชื่อมต่อใน เข้าร่วม.
  • พิจารณาสร้างดัชนีคอลัมน์ที่ใช้ในการค้นหาแถวสำหรับการจับคู่ค่าที่ตรงกันทุกประการ

และตอนนี้จริง ๆ แล้ว:

14 คำถามเกี่ยวกับดัชนีใน SQL Server ที่คุณเขินอายที่จะถาม

เหตุใดตารางจึงไม่สามารถมีดัชนีสองคลัสเตอร์ได้

ต้องการคำตอบสั้น ๆ ? ดัชนีคลัสเตอร์คือตาราง เมื่อคุณสร้างดัชนีแบบคลัสเตอร์บนตาราง กลไกการจัดเก็บข้อมูลจะเรียงลำดับแถวทั้งหมดในตารางจากน้อยไปหามากหรือจากมากไปน้อยตามคำจำกัดความของดัชนี ดัชนีแบบคลัสเตอร์ไม่ใช่เอนทิตีที่แยกจากกันเหมือนกับดัชนีอื่นๆ แต่เป็นกลไกในการจัดเรียงข้อมูลในตารางและอำนวยความสะดวกในการเข้าถึงแถวข้อมูลอย่างรวดเร็ว
สมมติว่าคุณมีตารางที่มีประวัติธุรกรรมการขาย ตารางการขายประกอบด้วยข้อมูล เช่น รหัสคำสั่งซื้อ ตำแหน่งผลิตภัณฑ์ในคำสั่งซื้อ หมายเลขผลิตภัณฑ์ ปริมาณของผลิตภัณฑ์ หมายเลขคำสั่งซื้อและวันที่ เป็นต้น คุณสร้างดัชนีคลัสเตอร์บนคอลัมน์ รหัสคำสั่งซื้อและ ไลน์ไอดีโดยเรียงลำดับจากน้อยไปหามากดังแสดงต่อไปนี้ T-SQLรหัส:
สร้างดัชนีคลัสเตอร์ที่ไม่ซ้ำใคร ix_oriderid_lineid บน dbo.Sales (OrderID, LineID);
เมื่อคุณเรียกใช้สคริปต์นี้ แถวทั้งหมดในตารางจะถูกจัดเรียงทางกายภาพก่อนตามคอลัมน์ OrderID จากนั้นตามด้วย LineID แต่ข้อมูลจะยังคงอยู่ในบล็อกลอจิคัลเดียว นั่นคือตาราง ด้วยเหตุนี้ คุณไม่สามารถสร้างดัชนีแบบคลัสเตอร์สองดัชนีได้ สามารถมีได้เพียงตารางเดียวที่มีข้อมูลเดียว และตารางนั้นสามารถเรียงลำดับได้เพียงครั้งเดียวตามลำดับเฉพาะ

หากตารางแบบคลัสเตอร์ให้ประโยชน์มากมาย เหตุใดจึงต้องใช้ฮีป

คุณถูก. ตารางแบบคลัสเตอร์นั้นดีมาก และการสืบค้นส่วนใหญ่จะทำงานได้ดีกว่าในตารางที่มีดัชนีแบบคลัสเตอร์ แต่ในบางกรณี คุณอาจต้องการปล่อยให้โต๊ะอยู่ในสภาพที่เป็นธรรมชาติและบริสุทธิ์ เช่น ในรูปแบบของฮีป และสร้างเฉพาะดัชนีที่ไม่ใช่คลัสเตอร์เพื่อให้การสืบค้นของคุณทำงานต่อไป
อย่างที่คุณจำได้ ฮีปจะเก็บข้อมูลตามลำดับแบบสุ่ม โดยทั่วไป ระบบย่อยหน่วยเก็บข้อมูลจะเพิ่มข้อมูลลงในตารางตามลำดับที่แทรกไว้ แต่ระบบย่อยหน่วยเก็บข้อมูลยังชอบที่จะย้ายแถวไปมาเพื่อให้หน่วยเก็บข้อมูลมีประสิทธิภาพมากขึ้น ด้วยเหตุนี้ คุณไม่มีโอกาสที่จะคาดการณ์ว่าข้อมูลจะถูกจัดเก็บในลำดับใด
หากกลไกสืบค้นต้องการค้นหาข้อมูลโดยไม่ได้รับประโยชน์จากดัชนีที่ไม่เป็นคลัสเตอร์ ระบบจะทำการสแกนตารางทั้งหมดเพื่อค้นหาแถวที่ต้องการ บนโต๊ะที่เล็กมาก สิ่งนี้มักจะไม่เป็นปัญหา แต่เมื่อฮีปมีขนาดใหญ่ขึ้น ประสิทธิภาพจะลดลงอย่างรวดเร็ว แน่นอนว่า ดัชนีที่ไม่คลัสเตอร์สามารถช่วยได้โดยใช้ตัวชี้ไปยังไฟล์ หน้า และแถวที่จัดเก็บข้อมูลที่ต้องการ ซึ่งโดยปกติจะเป็นทางเลือกที่ดีกว่าการสแกนตาราง ถึงกระนั้นก็ตาม การเปรียบเทียบประโยชน์ของดัชนีแบบคลัสเตอร์เมื่อพิจารณาถึงประสิทธิภาพของคิวรีก็เป็นเรื่องยาก
อย่างไรก็ตาม ฮีปสามารถช่วยปรับปรุงประสิทธิภาพในบางสถานการณ์ได้ พิจารณาตารางที่มีการแทรกจำนวนมากแต่มีการอัปเดตหรือลบเพียงเล็กน้อย ตัวอย่างเช่น ตารางที่เก็บบันทึกจะใช้เป็นหลักในการแทรกค่าจนกว่าจะถูกเก็บถาวร บนฮีป คุณจะไม่เห็นการแบ่งเพจและการกระจายตัวของข้อมูลเหมือนกับที่คุณเห็นดัชนีแบบคลัสเตอร์ เนื่องจากแถวต่างๆ จะถูกเพิ่มไปที่ส่วนท้ายของฮีปเท่านั้น การแบ่งหน้ามากเกินไปอาจส่งผลกระทบอย่างมากต่อประสิทธิภาพการทำงาน และไม่ใช่วิธีที่ดี โดยทั่วไป ฮีปช่วยให้คุณสามารถแทรกข้อมูลได้ค่อนข้างลำบาก และคุณไม่จำเป็นต้องจัดการกับค่าใช้จ่ายในการจัดเก็บและการบำรุงรักษาเช่นเดียวกับดัชนีแบบคลัสเตอร์
แต่การขาดการอัปเดตและการลบข้อมูลไม่ควรถือเป็นเหตุผลเดียว วิธีการสุ่มตัวอย่างข้อมูลก็เป็นปัจจัยสำคัญเช่นกัน ตัวอย่างเช่น คุณไม่ควรใช้ฮีปหากคุณค้นหาช่วงข้อมูลบ่อยครั้ง หรือข้อมูลที่คุณค้นหามักจะจำเป็นต้องเรียงลำดับหรือจัดกลุ่ม
ทั้งหมดนี้หมายความว่าคุณควรพิจารณาใช้ฮีปเมื่อคุณทำงานกับตารางที่มีขนาดเล็กมากเท่านั้น หรือการโต้ตอบทั้งหมดของคุณกับตารางนั้นจำกัดอยู่เพียงการแทรกข้อมูลและการสืบค้นของคุณนั้นง่ายมาก (และคุณกำลังใช้ดัชนีที่ไม่ใช่คลัสเตอร์ ถึงอย่างไร). มิฉะนั้น ให้ใช้ดัชนีคลัสเตอร์ที่ออกแบบมาอย่างดี เช่น ดัชนีที่กำหนดไว้ในฟิลด์คีย์จากน้อยไปหามาก เช่น คอลัมน์ที่ใช้กันอย่างแพร่หลายด้วย ตัวตน.

ฉันจะเปลี่ยนปัจจัยการเติมดัชนีเริ่มต้นได้อย่างไร

การเปลี่ยนปัจจัยการเติมดัชนีเริ่มต้นเป็นสิ่งหนึ่ง การทำความเข้าใจว่าอัตราส่วนเริ่มต้นทำงานอย่างไรเป็นอีกเรื่องหนึ่ง แต่ก่อนอื่น ให้ย้อนกลับไปสองสามก้าว ปัจจัยการเติมดัชนีจะกำหนดจำนวนพื้นที่บนเพจเพื่อจัดเก็บดัชนีที่ระดับล่างสุด (ระดับลีฟ) ก่อนที่จะเริ่มเติมเพจใหม่ ตัวอย่างเช่น หากตั้งค่าสัมประสิทธิ์เป็น 90 เมื่อดัชนีเพิ่มขึ้น มันจะครอบครอง 90% ของหน้า จากนั้นจึงย้ายไปยังหน้าถัดไป
ตามค่าเริ่มต้น ค่าปัจจัยการเติมดัชนีจะอยู่ในนั้น เซิร์ฟเวอร์ SQLคือ 0 ซึ่งเท่ากับ 100 ด้วยเหตุนี้ ดัชนีใหม่ทั้งหมดจะสืบทอดการตั้งค่านี้โดยอัตโนมัติ เว้นแต่คุณจะระบุค่าในโค้ดของคุณที่แตกต่างจากค่ามาตรฐานของระบบโดยเฉพาะ หรือเปลี่ยนลักษณะการทำงานเริ่มต้น คุณสามารถใช้ได้ สตูดิโอการจัดการเซิร์ฟเวอร์ SQLเพื่อปรับค่าเริ่มต้นหรือเรียกใช้ขั้นตอนการจัดเก็บของระบบ sp_configure. ยกตัวอย่างชุดต่อไปนี้ T-SQLคำสั่งตั้งค่าสัมประสิทธิ์เป็น 90 (ก่อนอื่นคุณต้องสลับไปที่โหมดการตั้งค่าขั้นสูง):
EXEC sp_configure "แสดงตัวเลือกขั้นสูง", 1; ไปกำหนดค่าใหม่ GO EXEC sp_configure "ตัวประกอบการเติม", 90; ไปกำหนดค่าใหม่ ไป
หลังจากเปลี่ยนค่าปัจจัยการเติมดัชนีแล้ว คุณต้องเริ่มบริการใหม่ เซิร์ฟเวอร์ SQL. ตอนนี้คุณสามารถตรวจสอบค่าที่ตั้งไว้ได้โดยการรัน sp_configure โดยไม่มีอาร์กิวเมนต์ที่สองที่ระบุ:
EXEC sp_configure "ตัวประกอบการเติม" GO
คำสั่งนี้ควรส่งคืนค่า 90 ด้วยเหตุนี้ ดัชนีที่สร้างขึ้นใหม่ทั้งหมดจะใช้ค่านี้ คุณสามารถทดสอบได้โดยสร้างดัชนีและค้นหาค่าตัวประกอบการเติม:
ใช้ AdventureWorks2012; -- ฐานข้อมูลของคุณ ไปสร้างดัชนีที่ไม่เป็นคลัสเตอร์ ix_people_lastname บน Person.Person(นามสกุล); ไปเลือก fill_factor จาก sys.indexes โดยที่ object_id = object_id("Person.Person") AND name="ix_people_lastname";
ในตัวอย่างนี้ เราได้สร้างดัชนีที่ไม่เป็นคลัสเตอร์บนตาราง บุคคลในฐานข้อมูล แอดเวนเจอร์เวิร์คส์2012. หลังจากสร้างดัชนีแล้ว เราจะรับค่าตัวประกอบการเติมจากตารางระบบ sys.indexes แบบสอบถามควรส่งคืน 90
อย่างไรก็ตาม ลองจินตนาการว่าเราลบดัชนีแล้วสร้างใหม่อีกครั้ง แต่ตอนนี้เราได้ระบุค่าปัจจัยการเติมเฉพาะแล้ว:
สร้างดัชนีที่ไม่เป็นคลัสเตอร์ ix_people_lastname บน Person.Person(นามสกุล) ด้วย (fillfactor=80); ไปเลือก fill_factor จาก sys.indexes โดยที่ object_id = object_id("Person.Person") AND name="ix_people_lastname";
ครั้งนี้เราได้เพิ่มคำแนะนำ กับและตัวเลือก ปัจจัยเติมสำหรับการดำเนินการสร้างดัชนีของเรา สร้างดัชนีและระบุค่า 80 ตัวดำเนินการ เลือกตอนนี้ส่งคืนค่าที่สอดคล้องกัน
จนถึงตอนนี้ทุกอย่างค่อนข้างตรงไปตรงมา จุดที่คุณจะถูกเบิร์นอย่างแท้จริงในกระบวนการทั้งหมดนี้คือเมื่อคุณสร้างดัชนีที่ใช้ค่าสัมประสิทธิ์เริ่มต้น โดยสมมติว่าคุณรู้ค่านั้น ตัวอย่างเช่น มีคนแก้ไขการตั้งค่าเซิร์ฟเวอร์และดื้อรั้นจนตั้งค่าปัจจัยการเติมดัชนีเป็น 20 ในขณะเดียวกัน คุณยังคงสร้างดัชนีต่อไป โดยถือว่าค่าเริ่มต้นคือ 0 ขออภัย คุณไม่สามารถค้นหาการเติมได้ ปัจจัยจนกระทั่งตราบใดที่คุณไม่สร้างดัชนี แล้วตรวจสอบค่าเหมือนที่เราทำในตัวอย่างของเรา มิฉะนั้น คุณจะต้องรอช่วงเวลาที่ประสิทธิภาพการสืบค้นลดลงมากจนคุณเริ่มสงสัยบางอย่าง
ปัญหาอื่นที่คุณควรทราบคือการสร้างดัชนีใหม่ เช่นเดียวกับการสร้างดัชนี คุณสามารถระบุค่าปัจจัยการเติมดัชนีเมื่อคุณสร้างดัชนีใหม่ได้ อย่างไรก็ตาม ไม่เหมือนกับคำสั่ง create index ตรงที่การสร้างใหม่ไม่ได้ใช้การตั้งค่าเริ่มต้นของเซิร์ฟเวอร์ แม้ว่าจะดูเหมือนเป็นเช่นนั้นก็ตาม ยิ่งไปกว่านั้น หากคุณไม่ได้ระบุค่าตัวประกอบการเติมดัชนีโดยเฉพาะ เซิร์ฟเวอร์ SQLจะใช้ค่าสัมประสิทธิ์ที่มีดัชนีนี้อยู่ก่อนการปรับโครงสร้างใหม่ ตัวอย่างเช่น การดำเนินการต่อไปนี้ แก้ไขดัชนีสร้างดัชนีที่เราเพิ่งสร้างขึ้นใหม่:
แก้ไขดัชนี ix_people_lastname บน Person.Person REBUILD; ไปเลือก fill_factor จาก sys.indexes โดยที่ object_id = object_id("Person.Person") AND name="ix_people_lastname";
เมื่อเราตรวจสอบค่าตัวประกอบการเติม เราจะได้ค่า 80 เนื่องจากนั่นคือสิ่งที่เราระบุไว้เมื่อเราสร้างดัชนีครั้งล่าสุด ค่าเริ่มต้นจะถูกละเว้น
อย่างที่คุณเห็น การเปลี่ยนแปลงค่าปัจจัยการเติมดัชนีนั้นไม่ใช่เรื่องยาก ยากกว่ามากที่จะรู้ มูลค่าปัจจุบันและเข้าใจเมื่อนำมาใช้ หากคุณระบุค่าสัมประสิทธิ์อย่างเจาะจงเสมอเมื่อสร้างและสร้างดัชนีใหม่ คุณจะทราบผลลัพธ์เฉพาะเสมอ เว้นแต่ว่าคุณจะต้องกังวลเกี่ยวกับการทำให้แน่ใจว่าคนอื่นจะไม่ทำให้การตั้งค่าเซิร์ฟเวอร์เสียหายอีก ทำให้ดัชนีทั้งหมดถูกสร้างขึ้นใหม่ด้วยปัจจัยการเติมดัชนีที่ต่ำอย่างน่าขัน

เป็นไปได้ไหมที่จะสร้างดัชนีแบบคลัสเตอร์บนคอลัมน์ที่มีการซ้ำกัน?

ใช่และไม่. ใช่ คุณสามารถสร้างดัชนีแบบคลัสเตอร์บนคอลัมน์หลักที่มีค่าซ้ำกันได้ ไม่ได้ ค่าของคอลัมน์คีย์ไม่สามารถคงอยู่ในสถานะที่ไม่ซ้ำได้ ให้ฉันอธิบาย. หากคุณสร้างดัชนีคลัสเตอร์ที่ไม่ซ้ำกันในคอลัมน์ กลไกการจัดเก็บข้อมูลจะเพิ่มตัวระบุเดียวให้กับค่าที่ซ้ำกันเพื่อให้แน่ใจว่าไม่ซ้ำกัน ดังนั้นจึงสามารถระบุแต่ละแถวในตารางคลัสเตอร์ได้
ตัวอย่างเช่น คุณอาจตัดสินใจสร้างดัชนีแบบคลัสเตอร์ในคอลัมน์ที่มีข้อมูลลูกค้า นามสกุลการรักษานามสกุล คอลัมน์นี้ประกอบด้วยค่า Franklin, Hancock, Washington และ Smith จากนั้นคุณใส่ค่า Adams, Hancock, Smith และ Smith อีกครั้ง แต่ค่าของคอลัมน์คีย์ต้องไม่ซ้ำกัน ดังนั้นกลไกการจัดเก็บข้อมูลจะเปลี่ยนค่าของรายการที่ซ้ำกันเพื่อให้มีลักษณะดังนี้: Adams, Franklin, Hancock, Hancock1234, Washington, Smith, Smith4567 และ Smith5678
เมื่อมองแวบแรก วิธีการนี้ดูเหมือนจะใช้ได้ แต่ค่าจำนวนเต็มจะเพิ่มขนาดของคีย์ ซึ่งอาจกลายเป็นปัญหาได้หากมีการซ้ำกันจำนวนมาก และค่าเหล่านี้จะกลายเป็นพื้นฐานของดัชนีที่ไม่คลัสเตอร์หรือค่าแปลกปลอม การอ้างอิงที่สำคัญ ด้วยเหตุผลเหล่านี้ คุณควรพยายามสร้างดัชนีคลัสเตอร์ที่ไม่ซ้ำกันทุกครั้งที่เป็นไปได้ หากเป็นไปไม่ได้ อย่างน้อยก็ลองใช้คอลัมน์ที่มีเนื้อหามีค่าไม่ซ้ำกันสูงมาก

ตารางจะถูกจัดเก็บอย่างไรหากไม่ได้สร้างดัชนีคลัสเตอร์?

เซิร์ฟเวอร์ SQLรองรับตารางสองประเภท: ตารางคลัสเตอร์ที่มีดัชนีคลัสเตอร์และตารางฮีปหรือเพียงแค่ฮีป ต่างจากตารางแบบคลัสเตอร์ตรงที่ข้อมูลบนฮีปไม่ได้ถูกจัดเรียงแต่อย่างใด โดยพื้นฐานแล้ว นี่คือกองข้อมูล (Heap) หากคุณเพิ่มแถวลงในตาราง ระบบจัดเก็บข้อมูลจะผนวกแถวนั้นที่ส่วนท้ายของหน้า เมื่อเพจเต็มไปด้วยข้อมูล มันจะถูกเพิ่มไปยังเพจใหม่ ในกรณีส่วนใหญ่ คุณจะต้องสร้างดัชนีแบบคลัสเตอร์บนตารางเพื่อใช้ประโยชน์จากความสามารถในการจัดเรียงและความเร็วในการสืบค้น (ลองจินตนาการถึงการค้นหาหมายเลขโทรศัพท์ในสมุดที่อยู่ที่ไม่ได้เรียงลำดับ) อย่างไรก็ตาม หากคุณเลือกที่จะไม่สร้างดัชนีแบบคลัสเตอร์ คุณยังคงสามารถสร้างดัชนีที่ไม่เป็นคลัสเตอร์บนฮีปได้ ในกรณีนี้ แต่ละแถวดัชนีจะมีตัวชี้ไปยังแถวฮีป ดัชนีประกอบด้วย ID ไฟล์ หมายเลขหน้า และหมายเลขบรรทัดข้อมูล

ความสัมพันธ์ระหว่างข้อจำกัดความเป็นเอกลักษณ์ของค่าและคีย์หลักที่มีดัชนีตารางคืออะไร

คีย์หลักและข้อจำกัดเฉพาะช่วยให้แน่ใจว่าค่าในคอลัมน์ไม่ซ้ำกัน คุณสามารถสร้างคีย์หลักได้เพียงคีย์เดียวสำหรับตาราง และไม่สามารถมีค่าได้ โมฆะ. คุณสามารถสร้างข้อจำกัดหลายประการเกี่ยวกับค่าเฉพาะของตารางได้ และแต่ละข้อจำกัดก็สามารถมีระเบียนเดียวได้ โมฆะ.
เมื่อคุณสร้างคีย์หลัก โปรแกรมจัดเก็บข้อมูลยังสร้างดัชนีคลัสเตอร์ที่ไม่ซ้ำกันหากยังไม่ได้สร้างดัชนีคลัสเตอร์ อย่างไรก็ตาม คุณสามารถแทนที่ลักษณะการทำงานเริ่มต้นได้ และดัชนีที่ไม่ใช่คลัสเตอร์จะถูกสร้างขึ้น หากมีดัชนีแบบคลัสเตอร์อยู่เมื่อคุณสร้างคีย์หลัก ดัชนีที่ไม่ซ้ำแบบคลัสเตอร์จะถูกสร้างขึ้น
เมื่อคุณสร้างข้อจำกัดเฉพาะ โปรแกรมจัดเก็บข้อมูลจะสร้างดัชนีเฉพาะที่ไม่เป็นคลัสเตอร์ อย่างไรก็ตาม คุณสามารถระบุการสร้างดัชนีคลัสเตอร์ที่ไม่ซ้ำกันได้ หากยังไม่เคยสร้างดัชนีไว้ก่อนหน้านี้
โดยทั่วไป ข้อจำกัดด้านค่าเฉพาะและดัชนีเฉพาะจะเหมือนกัน

เหตุใดดัชนีแบบคลัสเตอร์และแบบไม่คลัสเตอร์จึงเรียกว่า B-tree ใน SQL Server

ดัชนีพื้นฐานใน SQL Server แบบคลัสเตอร์หรือไม่คลัสเตอร์ มีการกระจายข้ามชุดของเพจที่เรียกว่าโหนดดัชนี เพจเหล่านี้ถูกจัดระเบียบในลำดับชั้นเฉพาะด้วยโครงสร้างแบบต้นไม้ที่เรียกว่าต้นไม้ที่สมดุล ที่ระดับบนสุดจะมีโหนดราก ที่ด้านล่างจะมีโหนดใบ โดยมีโหนดกลางระหว่างระดับบนและล่าง ดังแสดงในรูป:


โหนดรูทเป็นจุดเริ่มต้นหลักสำหรับการสืบค้นที่พยายามดึงข้อมูลผ่านดัชนี เริ่มต้นจากโหนดนี้ โปรแกรมสืบค้นจะเริ่มต้นการนำทางตามโครงสร้างลำดับชั้นไปยังโหนดปลายสุดที่เหมาะสมซึ่งมีข้อมูล
ตัวอย่างเช่น ลองจินตนาการว่าได้รับคำขอให้เลือกแถวที่มีค่าคีย์เป็น 82 ระบบย่อยการสืบค้นเริ่มทำงานจากโหนดรูท ซึ่งอ้างอิงถึงโหนดระดับกลางที่เหมาะสม ในกรณีของเรา 1-100 จากโหนดกลาง 1-100 จะมีการเปลี่ยนแปลงไปยังโหนด 51-100 และจากที่นั่นไปยังโหนดสุดท้าย 76-100 หากนี่คือดัชนีแบบคลัสเตอร์ โหนดลีฟจะมีข้อมูลของแถวที่เกี่ยวข้องกับคีย์เท่ากับ 82 หากนี่คือดัชนีที่ไม่ใช่คลัสเตอร์ ลีฟดัชนีจะมีตัวชี้ไปยังตารางคลัสเตอร์หรือแถวเฉพาะใน กอง

ดัชนีจะปรับปรุงประสิทธิภาพการสืบค้นได้อย่างไรหากคุณต้องสำรวจโหนดดัชนีเหล่านี้ทั้งหมด

ประการแรก ดัชนีไม่ได้ปรับปรุงประสิทธิภาพเสมอไป ดัชนีที่สร้างขึ้นอย่างไม่ถูกต้องมากเกินไปทำให้ระบบกลายเป็นหล่มและลดประสิทธิภาพการสืบค้น พูดได้ตรงกว่าว่าหากใช้ดัชนีอย่างระมัดระวัง ดัชนีเหล่านั้นจะช่วยเพิ่มประสิทธิภาพได้อย่างมาก
ลองนึกถึงหนังสือเล่มใหญ่เกี่ยวกับการปรับแต่งประสิทธิภาพโดยเฉพาะ เซิร์ฟเวอร์ SQL(ฉบับกระดาษ ไม่ใช่ฉบับอิเล็กทรอนิกส์) ลองจินตนาการว่าคุณต้องการค้นหาข้อมูลเกี่ยวกับการกำหนดค่า Resource Governor คุณสามารถลากนิ้วทีละหน้าผ่านหนังสือทั้งเล่ม หรือเปิดสารบัญและค้นหาหมายเลขหน้าพร้อมข้อมูลที่คุณกำลังมองหา (โดยที่หนังสือได้รับการจัดทำดัชนีอย่างถูกต้องและเนื้อหามีดัชนีที่ถูกต้อง) สิ่งนี้จะช่วยคุณประหยัดเวลาได้มากอย่างแน่นอน แม้ว่าคุณจะต้องเข้าถึงโครงสร้างที่แตกต่างไปจากเดิมอย่างสิ้นเชิงก่อน (ดัชนี) เพื่อรับข้อมูลที่คุณต้องการจากโครงสร้างหลัก (หนังสือ)
เหมือนดัชนีหนังสือ ดัชนีเข้า เซิร์ฟเวอร์ SQLช่วยให้คุณสามารถเรียกใช้การสืบค้นข้อมูลที่คุณต้องการได้อย่างแม่นยำ แทนที่จะสแกนข้อมูลทั้งหมดที่มีอยู่ในตารางโดยสมบูรณ์ สำหรับตารางขนาดเล็ก การสแกนแบบเต็มมักจะไม่เป็นปัญหา แต่ตารางขนาดใหญ่จะใช้ข้อมูลหลายหน้า ซึ่งอาจส่งผลให้ต้องใช้เวลานานในการดำเนินการสืบค้น เว้นแต่ว่าจะมีดัชนีอยู่เพื่อให้กลไกการสืบค้นได้รับตำแหน่งที่ถูกต้องของข้อมูลในทันที ลองนึกภาพการหลงทางที่ทางแยกถนนหลายชั้นหน้ามหานครใหญ่โดยไม่มีแผนที่ แล้วคุณจะเข้าใจไอเดียนี้

หากดัชนีมีคุณภาพดี ทำไมไม่สร้างดัชนีขึ้นมาในทุกคอลัมน์ล่ะ

ไม่มีการทำความดีใดไม่ควรได้รับโทษ อย่างน้อยก็เป็นเช่นนั้นกับดัชนี แน่นอนว่าดัชนีทำงานได้ดีตราบใดที่คุณเรียกใช้โอเปอเรเตอร์ดึงข้อความค้นหา เลือกแต่ทันทีที่มีการโทรหาผู้ให้บริการบ่อยครั้ง แทรก, อัปเดตและ ลบภูมิประเทศจึงเปลี่ยนแปลงเร็วมาก
เมื่อคุณเริ่มต้นการร้องขอข้อมูลโดยผู้ให้บริการ เลือกโปรแกรมสืบค้นจะค้นหาดัชนี เลื่อนไปตามโครงสร้างแบบต้นไม้ และค้นพบข้อมูลที่กำลังมองหา อะไรจะง่ายกว่านี้? แต่สิ่งต่างๆ จะเปลี่ยนไปหากคุณเริ่มใช้คำสั่งเปลี่ยนแปลง เช่น อัปเดต. ใช่ สำหรับส่วนแรกของคำสั่ง โปรแกรมสืบค้นสามารถใช้ดัชนีอีกครั้งเพื่อค้นหาแถวที่กำลังแก้ไข ถือเป็นข่าวดี และหากมีการเปลี่ยนแปลงข้อมูลในแถวอย่างง่าย ๆ ที่ไม่ส่งผลกระทบต่อการเปลี่ยนแปลงในคอลัมน์หลัก กระบวนการเปลี่ยนแปลงจะไม่เจ็บปวดโดยสิ้นเชิง แต่จะเกิดอะไรขึ้นถ้าการเปลี่ยนแปลงทำให้เพจที่มีข้อมูลถูกแบ่ง หรือค่าของคอลัมน์คีย์มีการเปลี่ยนแปลง ทำให้ถูกย้ายไปยังโหนดดัชนีอื่น ซึ่งจะส่งผลให้ดัชนีอาจจำเป็นต้องมีการปรับโครงสร้างองค์กรใหม่ซึ่งส่งผลต่อดัชนีและการดำเนินการที่เกี่ยวข้องทั้งหมด ส่งผลให้ผลผลิตลดลงอย่างกว้างขวาง
กระบวนการที่คล้ายกันเกิดขึ้นเมื่อเรียกผู้ปฏิบัติงาน ลบ. ดัชนีสามารถช่วยค้นหาข้อมูลที่ถูกลบได้ แต่การลบข้อมูลเองอาจส่งผลให้มีการสับเปลี่ยนหน้าใหม่ เกี่ยวกับผู้ปฏิบัติงาน แทรกศัตรูหลักของดัชนีทั้งหมด: คุณเริ่มเพิ่มข้อมูลจำนวนมากซึ่งนำไปสู่การเปลี่ยนแปลงในดัชนีและการจัดโครงสร้างใหม่และทำให้ทุกคนต้องทนทุกข์ทรมาน
ดังนั้นให้พิจารณาประเภทของการสืบค้นไปยังฐานข้อมูลของคุณเมื่อพิจารณาว่าจะสร้างดัชนีประเภทใดและจำนวนเท่าใดที่จะสร้าง มากกว่าไม่ได้หมายความว่าดีขึ้น ก่อนที่จะเพิ่มดัชนีใหม่ลงในตาราง ให้พิจารณาต้นทุนไม่เพียงแต่การสืบค้นพื้นฐานเท่านั้น แต่ยังรวมถึงจำนวนพื้นที่ดิสก์ที่ใช้ ต้นทุนในการดูแลรักษาฟังก์ชันการทำงานและดัชนี ซึ่งอาจนำไปสู่ผลกระทบแบบโดมิโนต่อการดำเนินการอื่น ๆ กลยุทธ์การออกแบบดัชนีของคุณเป็นหนึ่งในส่วนที่สำคัญที่สุดของการนำไปใช้งาน และควรรวมข้อควรพิจารณาหลายประการ ตั้งแต่ขนาดของดัชนี จำนวนค่าที่ไม่ซ้ำ ไปจนถึงประเภทของคำค้นหาที่ดัชนีจะสนับสนุน

จำเป็นต้องสร้างดัชนีคลัสเตอร์บนคอลัมน์ที่มีคีย์หลักหรือไม่?

คุณสามารถสร้างดัชนีแบบคลัสเตอร์ในคอลัมน์ใดก็ได้ที่ตรงกัน เงื่อนไขที่จำเป็น. เป็นความจริงที่ว่าดัชนีแบบคลัสเตอร์และข้อจำกัดคีย์หลักถูกสร้างขึ้นมาเพื่อกันและกันและเป็นการจับคู่ที่เกิดขึ้นในสวรรค์ ดังนั้น โปรดเข้าใจความจริงที่ว่าเมื่อคุณสร้างคีย์หลัก ดัชนีแบบคลัสเตอร์จะถูกสร้างขึ้นโดยอัตโนมัติหากไม่มี สร้างขึ้นก่อนหน้านี้ อย่างไรก็ตาม คุณอาจตัดสินใจว่าดัชนีแบบคลัสเตอร์จะทำงานได้ดีกว่าในที่อื่น และบ่อยครั้งที่การตัดสินใจของคุณมีความสมเหตุสมผล
วัตถุประสงค์หลักของดัชนีแบบคลัสเตอร์คือการจัดเรียงแถวทั้งหมดในตารางของคุณตามคอลัมน์หลักที่ระบุเมื่อกำหนดดัชนี ช่วยให้ค้นหาได้อย่างรวดเร็วและเข้าถึงข้อมูลตารางได้ง่าย
คีย์หลักของตารางอาจเป็นทางเลือกที่ดี เนื่องจากคีย์นี้จะระบุแต่ละแถวในตารางโดยไม่ซ้ำกันโดยไม่ต้องเพิ่มข้อมูลเพิ่มเติม ในบางกรณี ทางเลือกที่ดีที่สุดจะมีคีย์หลักตัวแทนที่ไม่เพียงแต่มีเอกลักษณ์เท่านั้น แต่ยังมีขนาดเล็กด้วย และมีค่าเพิ่มขึ้นตามลำดับ ซึ่งทำให้ดัชนีที่ไม่ใช่คลัสเตอร์ตามค่านี้มีประสิทธิภาพมากขึ้น เครื่องมือเพิ่มประสิทธิภาพแบบสอบถามยังชอบการรวมกันของดัชนีคลัสเตอร์และคีย์หลักเนื่องจากการเข้าร่วมตารางจะเร็วกว่าการรวมด้วยวิธีอื่นที่ไม่ใช้คีย์หลักและดัชนีคลัสเตอร์ที่เกี่ยวข้อง อย่างที่ฉันบอกว่ามันเป็นการแข่งขันที่เกิดขึ้นในสวรรค์
อย่างไรก็ตาม ท้ายที่สุด เป็นที่น่าสังเกตว่าเมื่อสร้างดัชนีแบบคลัสเตอร์ มีหลายแง่มุมที่ต้องพิจารณา ได้แก่ จำนวนดัชนีที่ไม่ใช่คลัสเตอร์ที่จะยึดตามดัชนีนั้น ค่าของคอลัมน์ดัชนีหลักจะเปลี่ยนแปลงบ่อยเพียงใด และมีขนาดใหญ่เพียงใด เมื่อค่าในคอลัมน์ของดัชนีคลัสเตอร์เปลี่ยนแปลงหรือดัชนีไม่ทำงานตามที่คาดไว้ ดัชนีอื่นๆ ทั้งหมดในตารางอาจได้รับผลกระทบ ดัชนีแบบคลัสเตอร์ควรขึ้นอยู่กับคอลัมน์ถาวรที่สุดซึ่งค่าเพิ่มขึ้นตามลำดับเฉพาะ แต่ไม่เปลี่ยนแปลงในลักษณะสุ่ม ดัชนีจะต้องสนับสนุนการสืบค้นข้อมูลที่มีการเข้าถึงบ่อยที่สุดของตาราง ดังนั้นการสืบค้นจึงใช้ประโยชน์อย่างเต็มที่จากการที่ข้อมูลได้รับการจัดเรียงและเข้าถึงได้ที่โหนดรูท ซึ่งเป็นการออกจากดัชนี หากคีย์หลักตรงกับสถานการณ์นี้ ให้ใช้คีย์นั้น ถ้าไม่เช่นนั้น ให้เลือกชุดคอลัมน์อื่น

จะเกิดอะไรขึ้นหากคุณจัดทำดัชนีมุมมอง มันจะยังคงเป็นมุมมองหรือไม่

มุมมองคือตารางเสมือนที่สร้างข้อมูลจากตารางตั้งแต่หนึ่งตารางขึ้นไป โดยพื้นฐานแล้ว จะเป็นคิวรีที่มีชื่อซึ่งดึงข้อมูลจากตารางที่ซ่อนอยู่เมื่อคุณสอบถามมุมมองนั้น คุณสามารถปรับปรุงประสิทธิภาพของคิวรีได้โดยการสร้างดัชนีแบบคลัสเตอร์และดัชนีแบบไม่คลัสเตอร์บนมุมมองนี้ ซึ่งคล้ายกับวิธีที่คุณสร้างดัชนีบนตาราง แต่ข้อแม้หลักคือคุณต้องสร้างดัชนีแบบคลัสเตอร์ก่อน จากนั้นจึงสร้างดัชนีที่ไม่คลัสเตอร์ได้
เมื่อสร้างมุมมองที่จัดทำดัชนี (มุมมองที่เป็นรูปธรรม) คำจำกัดความของมุมมองจะยังคงเป็นเอนทิตีที่แยกจากกัน นี่เป็นเพียงตัวดำเนินการแบบฮาร์ดโค้ดเท่านั้น เลือก, เก็บไว้ในฐานข้อมูล แต่ดัชนีเป็นเรื่องราวที่แตกต่างไปจากเดิมอย่างสิ้นเชิง เมื่อคุณสร้างดัชนีแบบคลัสเตอร์หรือแบบไม่คลัสเตอร์บนผู้ให้บริการ ข้อมูลจะถูกบันทึกลงในดิสก์ทางกายภาพ เช่นเดียวกับดัชนีทั่วไป นอกจากนี้ เมื่อข้อมูลเปลี่ยนแปลงในตารางพื้นฐาน ดัชนีของมุมมองจะเปลี่ยนโดยอัตโนมัติ (ซึ่งหมายความว่าคุณอาจต้องการหลีกเลี่ยงการสร้างดัชนีมุมมองบนตารางที่เปลี่ยนแปลงบ่อยครั้ง) ไม่ว่าในกรณีใด มุมมองยังคงเป็นมุมมอง - ดูที่ตาราง แต่ดำเนินการอย่างแม่นยำ ช่วงเวลานี้โดยมีดัชนีตรงกัน
ก่อนที่คุณจะสามารถสร้างดัชนีบนมุมมองได้ จะต้องเป็นไปตามข้อจำกัดหลายประการ ตัวอย่างเช่น มุมมองสามารถอ้างอิงได้เฉพาะตารางฐานเท่านั้น แต่อ้างอิงไม่ได้กับมุมมองอื่น และตารางเหล่านั้นจะต้องอยู่ในฐานข้อมูลเดียวกัน จริงๆ แล้วยังมีข้อจำกัดอื่นๆ มากมาย ดังนั้นโปรดตรวจสอบเอกสารประกอบ เซิร์ฟเวอร์ SQLสำหรับรายละเอียดสกปรกทั้งหมด

เหตุใดจึงใช้ดัชนีครอบคลุมแทนดัชนีคอมโพสิต

ขั้นแรก เราต้องแน่ใจว่าเราเข้าใจความแตกต่างระหว่างทั้งสอง ดัชนีผสมเป็นเพียงดัชนีปกติที่มีมากกว่าหนึ่งคอลัมน์ คุณสามารถใช้คอลัมน์คีย์หลายคอลัมน์เพื่อให้แน่ใจว่าแต่ละแถวในตารางไม่ซ้ำกัน หรือคุณอาจมีหลายคอลัมน์เพื่อให้แน่ใจว่าคีย์หลักไม่ซ้ำกัน หรือคุณอาจพยายามเพิ่มประสิทธิภาพการดำเนินการของการสืบค้นที่ทำงานบ่อยในหลายคอลัมน์ อย่างไรก็ตาม โดยทั่วไป ยิ่งคอลัมน์สำคัญในดัชนีมีมากเท่าใด ดัชนีก็จะยิ่งมีประสิทธิภาพน้อยลงเท่านั้น ซึ่งหมายความว่าดัชนีผสมควรใช้อย่างรอบคอบ
ตามที่ระบุไว้ การสืบค้นจะได้รับประโยชน์อย่างมากหากข้อมูลที่จำเป็นทั้งหมดอยู่ในตำแหน่งใบไม้ของดัชนีทันที เช่นเดียวกับตัวดัชนีเอง นี่ไม่ใช่ปัญหาสำหรับดัชนีแบบคลัสเตอร์เพราะว่า ข้อมูลทั้งหมดมีอยู่แล้ว (ซึ่งเป็นเหตุผลว่าทำไมการคิดให้รอบคอบเมื่อคุณสร้างดัชนีแบบคลัสเตอร์จึงเป็นสิ่งสำคัญ) แต่ดัชนีที่ไม่คลัสเตอร์บนใบไม้จะมีเฉพาะคอลัมน์หลักเท่านั้น ในการเข้าถึงข้อมูลอื่นๆ ทั้งหมด เครื่องมือเพิ่มประสิทธิภาพการสืบค้นต้องมีขั้นตอนเพิ่มเติม ซึ่งสามารถเพิ่มค่าใช้จ่ายจำนวนมากในการดำเนินการสืบค้นของคุณได้
นี่คือจุดที่ดัชนีการครอบคลุมเข้ามาช่วยเหลือ เมื่อคุณกำหนดดัชนีที่ไม่เป็นคลัสเตอร์ คุณสามารถระบุคอลัมน์เพิ่มเติมให้กับคอลัมน์หลักของคุณได้ ตัวอย่างเช่น สมมติว่าแอปพลิเคชันของคุณค้นหาข้อมูลคอลัมน์บ่อยครั้ง รหัสคำสั่งซื้อและ วันสั่งในตาราง ฝ่ายขาย:
เลือก OrderID, OrderDate จากการขาย โดยที่ OrderID = 12345;
คุณสามารถสร้างดัชนีแบบผสมที่ไม่ใช่คลัสเตอร์บนทั้งสองคอลัมน์ได้ แต่คอลัมน์ OrderDate จะเพิ่มเฉพาะค่าใช้จ่ายในการบำรุงรักษาดัชนีโดยไม่ทำหน้าที่เป็นคอลัมน์คีย์ที่มีประโยชน์อย่างยิ่ง การตัดสินใจที่ดีที่สุดจะเป็นการสร้างดัชนีครอบคลุมในคอลัมน์หลัก รหัสคำสั่งซื้อและยังมีคอลัมน์เพิ่มเติมอีกด้วย วันสั่ง:
สร้างดัชนีที่ไม่เป็นคลัสเตอร์ ix_orderid บน dbo.Sales (OrderID) รวม (OrderDate);
วิธีนี้จะหลีกเลี่ยงข้อเสียของการจัดทำดัชนีคอลัมน์ที่ซ้ำซ้อน ในขณะที่ยังคงรักษาประโยชน์ของการจัดเก็บข้อมูลแบบลีฟเมื่อเรียกใช้คิวรี คอลัมน์ที่รวมไว้ไม่ได้เป็นส่วนหนึ่งของคีย์ แต่ข้อมูลจะถูกจัดเก็บไว้ในโหนดลีฟ ซึ่งก็คือดัชนีลีฟ วิธีนี้สามารถปรับปรุงประสิทธิภาพการดำเนินการคิวรีได้โดยไม่มีผลกระทบใดๆ ค่าใช้จ่ายเพิ่มเติม. นอกจากนี้ คอลัมน์ที่รวมอยู่ในดัชนีที่ครอบคลุมยังมีข้อจำกัดน้อยกว่าคอลัมน์หลักของดัชนี

จำนวนรายการที่ซ้ำกันในคอลัมน์หลักมีความสำคัญหรือไม่

เมื่อคุณสร้างดัชนี คุณต้องพยายามลดจำนวนรายการที่ซ้ำกันในคอลัมน์หลักของคุณ หรือแม่นยำยิ่งขึ้น: พยายามรักษาอัตราการเกิดซ้ำให้ต่ำที่สุดเท่าที่จะเป็นไปได้
หากคุณกำลังทำงานกับดัชนีผสม การทำซ้ำจะมีผลกับคอลัมน์หลักทั้งหมดโดยรวม คอลัมน์เดียวสามารถมีค่าที่ซ้ำกันได้หลายค่า แต่ควรมีการซ้ำกันน้อยที่สุดในบรรดาคอลัมน์ดัชนีทั้งหมด ตัวอย่างเช่น คุณสร้างดัชนีที่ไม่เป็นคลัสเตอร์แบบผสมบนคอลัมน์ ชื่อจริงและ นามสกุลคุณสามารถมีค่า John Doe และค่า Doe ได้หลายค่า แต่คุณต้องการมีค่า John Doe น้อยที่สุดเท่าที่จะเป็นไปได้ หรือควรมีค่า John Doe เพียงค่าเดียว
อัตราส่วนความเป็นเอกลักษณ์ของค่าของคอลัมน์หลักเรียกว่าการเลือกดัชนี ยิ่งมีค่าที่ไม่ซ้ำกันมากเท่าไร การเลือกก็จะยิ่งสูงขึ้นเท่านั้น: ดัชนีที่ไม่ซ้ำกันจะมีค่าการเลือกที่เป็นไปได้มากที่สุดเท่าที่จะเป็นไปได้ โปรแกรมสืบค้นชอบคอลัมน์ที่มีค่าการเลือกสูง โดยเฉพาะอย่างยิ่งหากคอลัมน์เหล่านั้นรวมอยู่ในส่วนคำสั่ง WHERE ของการสืบค้นที่คุณดำเนินการบ่อยที่สุด ยิ่งเลือกดัชนีมากเท่าใด โปรแกรมสืบค้นก็จะยิ่งลดขนาดของชุดข้อมูลผลลัพธ์ได้เร็วขึ้นเท่านั้น แน่นอนว่าข้อเสียคือคอลัมน์ที่มีค่าเฉพาะค่อนข้างน้อยจะไม่ค่อยเป็นตัวเลือกที่ดีสำหรับการจัดทำดัชนี

เป็นไปได้ไหมที่จะสร้างดัชนีที่ไม่ใช่คลัสเตอร์บนชุดย่อยเฉพาะของข้อมูลคอลัมน์คีย์เท่านั้น

ตามค่าเริ่มต้น ดัชนีที่ไม่คลัสเตอร์จะมีหนึ่งแถวสำหรับแต่ละแถวในตาราง แน่นอน คุณสามารถพูดสิ่งเดียวกันเกี่ยวกับดัชนีแบบคลัสเตอร์ได้ โดยสมมติว่าดัชนีนั้นเป็นตาราง แต่เมื่อพูดถึงดัชนีที่ไม่ใช่คลัสเตอร์ ความสัมพันธ์แบบหนึ่งต่อหนึ่งถือเป็นแนวคิดที่สำคัญ เพราะเริ่มต้นด้วยเวอร์ชัน เซิร์ฟเวอร์ SQL 2008คุณมีตัวเลือกในการสร้างดัชนีที่กรองได้ซึ่งจำกัดแถวที่รวมอยู่ในดัชนีนั้น ดัชนีที่กรองสามารถปรับปรุงประสิทธิภาพการค้นหาได้เนื่องจาก... มีขนาดเล็กกว่าและมีสถิติที่ผ่านการกรองและแม่นยำมากกว่าสถิติแบบตารางทั้งหมด ซึ่งนำไปสู่การสร้างแผนการดำเนินการที่ได้รับการปรับปรุง ดัชนีที่กรองยังต้องการพื้นที่จัดเก็บน้อยลงและค่าบำรุงรักษาลดลง ดัชนีจะได้รับการอัปเดตเมื่อข้อมูลที่ตรงกับตัวกรองเปลี่ยนแปลงเท่านั้น
นอกจากนี้ ดัชนีที่กรองได้ยังสร้างได้ง่ายอีกด้วย ในตัวดำเนินการ สร้างดัชนีคุณเพียงแค่ต้องระบุใน ที่ไหนสภาพตัวกรอง ตัวอย่างเช่น คุณสามารถกรองแถวทั้งหมดที่มีค่า NULL ออกจากดัชนีได้ ดังที่แสดงในโค้ด:
สร้างดัชนีที่ไม่เป็นคลัสเตอร์ ix_trackingnumber บน Sales.SalesOrderDetail (CarrierTrackingNumber) โดยที่ CarrierTrackingNumber ไม่ใช่ NULL;
ในความเป็นจริง เราสามารถกรองข้อมูลใดๆ ที่ไม่สำคัญในการสืบค้นที่สำคัญออกไปได้ แต่ต้องระวังเพราะ... เซิร์ฟเวอร์ SQLมีข้อจำกัดหลายประการเกี่ยวกับดัชนีที่กรองได้ เช่น ไม่สามารถสร้างดัชนีที่กรองได้บนมุมมอง ดังนั้น โปรดอ่านเอกสารประกอบอย่างละเอียด
อาจเป็นไปได้ว่าคุณสามารถได้รับผลลัพธ์ที่คล้ายคลึงกันโดยการสร้างมุมมองที่จัดทำดัชนีไว้ อย่างไรก็ตาม ดัชนีที่กรองแล้วมีข้อดีหลายประการ เช่น ความสามารถในการลดต้นทุนการบำรุงรักษาและปรับปรุงคุณภาพของแผนการดำเนินการของคุณ ดัชนีที่กรองแล้วสามารถสร้างใหม่ทางออนไลน์ได้ ลองสิ่งนี้ด้วยมุมมองที่จัดทำดัชนี

และอีกครั้งเล็กน้อยจากนักแปล

จุดประสงค์ของการปรากฏคำแปลนี้บนหน้า Habrahabr คือการบอกหรือเตือนคุณเกี่ยวกับบล็อก SimpleTalk จาก เรดเกต.
มีการเผยแพร่โพสต์ที่สนุกสนานและน่าสนใจมากมาย
ฉันไม่มีส่วนเกี่ยวข้องกับผลิตภัณฑ์ใดๆ ของบริษัท เรดเกตหรือการขายของพวกเขา

ตามที่สัญญาไว้ หนังสือสำหรับผู้ที่ต้องการทราบข้อมูลเพิ่มเติม
ฉันขอแนะนำหนังสือดีๆ สามเล่มจากตัวฉันเอง (ลิงก์นำไปสู่ จุดไฟรุ่นต่างๆ ของทางร้าน อเมซอน):

โดยหลักการแล้ว คุณสามารถเปิดดัชนีแบบง่าย เพิ่มแท็ก ได้
Microsoft SQL Server 2012 T-SQL พื้นฐาน (การอ้างอิงสำหรับนักพัฒนา)
ผู้เขียน อิทซิก เบน-กัน
วันที่ตีพิมพ์: 15 กรกฎาคม 2555
ผู้เขียนซึ่งเป็นผู้เชี่ยวชาญด้านงานฝีมือของเขาให้ความรู้พื้นฐานเกี่ยวกับการทำงานกับฐานข้อมูล
หากคุณลืมทุกสิ่งทุกอย่างหรือไม่เคยรู้เลยก็คุ้มค่าที่จะอ่านอย่างแน่นอน

ค่าสัมพัทธ์ชนิดพิเศษคือดัชนี ดัชนี (Index) หมายถึง ตัวชี้ ตัวบ่งชี้ คุณสมบัติของดัชนีคือ:

1) ด้วยความช่วยเหลือของดัชนีเราสามารถแสดงอัตราส่วนของปรากฏการณ์ที่ต่างกันซึ่งไม่สามารถสรุปตัวบ่งชี้ได้โดยตรง เมื่อใช้ดัชนี คุณสามารถกำหนดเปอร์เซ็นต์ของความสมบูรณ์ของแผนสำหรับผลิตภัณฑ์แต่ละประเภทได้เช่นเดียวกัน เปอร์เซ็นต์เฉลี่ยการปฏิบัติตามแผนสำหรับผลิตภัณฑ์ทั้งหมด องค์กรการค้าซึ่งผลิตสินค้าประเภทต่างๆ

2) การใช้ดัชนีคุณสามารถระบุระดับของการดำเนินการตามแผนและระดับของการเปลี่ยนแปลงของปรากฏการณ์ในช่วงเวลาหนึ่งและอัตราส่วนของขนาดของปรากฏการณ์ในอวกาศ ผ่าน ดัชนีเศรษฐกิจคุณสามารถแสดงงานตามแผนได้

ในเชิงสถิติ ดัชนี– นี่คือค่าสัมพัทธ์ที่แสดงลักษณะการเปลี่ยนแปลงของเวลาและพื้นที่ในระดับของปรากฏการณ์ทางสังคม (กระบวนการ) ที่กำลังศึกษาหรือระดับของการดำเนินการตามแผน

ขึ้นอยู่กับระดับความครอบคลุม มีดัชนีสองประเภท: รายบุคคลและทั่วไป

2. ดัชนีส่วนบุคคล

ดัชนีส่วนบุคคลกำหนดลักษณะความสัมพันธ์ระหว่างองค์ประกอบแต่ละส่วนของผลรวม

ตัวอย่างดัชนีแต่ละรายการอาจเป็นเปอร์เซ็นต์ของการปฏิบัติตามแผนหรือการเปลี่ยนแปลงของผลลัพธ์ของผลิตภัณฑ์ประเภทหนึ่ง เปอร์เซ็นต์ของการปฏิบัติตามแผนหรือการเปลี่ยนแปลงของต้นทุนของผลิตภัณฑ์ประเภทหนึ่ง หรืออัตราส่วนของผลลัพธ์ของประเภทหนึ่ง ของผลิตภัณฑ์ในช่วงเวลาเดียวกันในพื้นที่ต่างๆ

ดัชนีแต่ละรายการจะแสดงด้วยตัวอักษร ถูกกำหนดโดยวิธีการเปรียบเทียบสองค่าที่กำหนดลักษณะระดับของกระบวนการทางสถิติหรือปรากฏการณ์ภายใต้การศึกษาในเวลาหรืออวกาศนั่นคือสำหรับสองช่วงเวลาที่ทำการเปรียบเทียบ ระยะเวลา ( ระดับที่กำลังเปรียบเทียบ) เรียกว่ารอบระยะเวลารายงาน หรือช่วงเวลาปัจจุบันและแสดงด้วยตัวห้อย "I" และช่วงเวลาที่มีระดับที่ทำการเปรียบเทียบเรียกว่าฐานและแสดงด้วยตัวห้อย "O" หรือ "rya" หากในระหว่างการวางแผนภายในบริษัท การเปรียบเทียบ จัดทำขึ้นตามแผน หากมีการศึกษาการเปลี่ยนแปลงของปรากฏการณ์ในช่วงระยะเวลาหนึ่ง แต่ละช่วงเวลาจะถูกกำหนดตามลำดับโดยใช้ตัวห้อย "O", "1", "2", "3" เป็นต้น

ในทางสถิติ ปริมาณจะแสดงด้วยตัวอักษร "q" ราคาแสดงด้วย "p" ต้นทุน – “z” เวลาที่ใช้ในการผลิตหน่วยผลิตภัณฑ์ – “t”

ดัชนีส่วนบุคคลมีการแสดงดังต่อไปนี้:


โดยที่ q 1 และ q 0 – จำนวนผลิตภัณฑ์ที่ผลิตในรอบระยะเวลาการรายงานและฐาน ดัชนีนี้แสดงลักษณะการเปลี่ยนแปลงในปริมาณทางกายภาพของผลิตภัณฑ์ในเวลา ในอวกาศ หากเราเปรียบเทียบการผลิตผลิตภัณฑ์ประเภทเดียวกันในช่วงเวลาเดียวกัน แต่สำหรับวัตถุที่แตกต่างกัน (โรงงาน ดินแดน ฯลฯ) และแผน , ถ้า ปล่อยจริงเปรียบเทียบกับเป้าหมายที่วางแผนไว้


โดยที่ p 1 และ p 0 คือราคาของหน่วยการผลิตในช่วงเวลาการรายงานและรอบระยะเวลาฐาน

ดัชนีต้นทุน:

ที่ไหน z 1 และ z 0 – ต้นทุนต่อหน่วยการผลิตในรอบระยะเวลาการรายงานและฐาน ดัชนีความเข้มแรงงาน:


ที่ไหน ที 1 และ ที 0 – เวลาที่ใช้ในการรายงานและรอบระยะเวลาฐานในการผลิตหน่วยผลิตภัณฑ์

การเปลี่ยนแปลงปริมาณการขายสินค้าในแง่มูลค่าสะท้อนถึงแต่ละบุคคล ดัชนีการหมุนเวียน:


ดัชนีข้างต้น: ราคา ปริมาณทางกายภาพ และมูลค่าการซื้อขายมีความสัมพันธ์กัน:


ความสัมพันธ์นี้แสดงให้เห็นว่าการเปลี่ยนแปลงมูลค่าการซื้อขายได้รับอิทธิพลจากการเปลี่ยนแปลงของราคาและการเปลี่ยนแปลงในปริมาณการขายของผลิตภัณฑ์ที่กำหนด

ดัชนีแต่ละรายการเป็นค่าสัมพัทธ์ของไดนามิก การดำเนินการตามแผน หรือการเปรียบเทียบ ดัชนีที่เป็นตัวบ่งชี้สัมพัทธ์จะแสดงในรูปแบบของค่าสัมประสิทธิ์เมื่อนำฐานสำหรับการเปรียบเทียบมาเป็นหนึ่งและเป็นเปอร์เซ็นต์เมื่อนำฐานสำหรับการเปรียบเทียบมาเป็น 100

ดัชนีพื้นฐานและดัชนีลูกโซ่

ในการกำหนดดัชนีทางสถิติ คุณต้องมีข้อมูลเป็นเวลาสองช่วงหรือสองระดับเพื่อเปรียบเทียบ

หากมีข้อมูลสำหรับช่วงเวลาหรือระดับจำนวนหนึ่ง ก็สามารถใช้ระดับเริ่มต้นเดียวกันหรือระดับของช่วงเวลาก่อนหน้าเป็นพื้นฐานในการเปรียบเทียบได้ ในกรณีแรก เราจะได้ดัชนีที่มีฐานคงที่ - ขั้นพื้นฐาน,และในวินาที - ดัชนีที่มีฐานตัวแปร - โซ่

ใน การวิเคราะห์ทางเศรษฐกิจดัชนีพื้นฐานและดัชนีลูกโซ่มีความหมายเฉพาะ

ดัชนีเศรษฐศาสตร์พื้นฐานแสดงลักษณะการเปลี่ยนแปลงในกระบวนการทางสถิติในช่วงเวลาที่ยาวนานโดยสัมพันธ์กับจุดเริ่มต้นหนึ่งจุด แต่หากมีความจำเป็นต้องติดตามการเปลี่ยนแปลงในปัจจุบันในกระบวนการทางสถิติ ดัชนีลูกโซ่จะถูกใช้

หากศึกษาช่วงเวลาเดียวกันโดยใช้ดัชนีพื้นฐานและดัชนีลูกโซ่แสดงว่ามีความสัมพันธ์ระหว่างดัชนีลูกโซ่ซึ่งเป็นผลคูณของดัชนีลูกโซ่เท่ากับดัชนีพื้นฐานความสัมพันธ์ดังกล่าวจะทำให้สามารถคำนวณดัชนีพื้นฐานได้จาก ข้อมูลดัชนีลูกโซ่ และในทางกลับกัน

ดัชนีทั่วไป

ดัชนีทั่วไปแสดงลักษณะของอัตราส่วนของชุดของกระบวนการทางสถิติหรือปรากฏการณ์ที่ประกอบด้วยองค์ประกอบที่ต่างกันและไม่สามารถเทียบเคียงได้โดยตรง ในการกำหนดต้นทุนรวมของผลิตภัณฑ์ประเภทต่างๆ โดยปกติจะใช้ราคาต่อหน่วยของผลิตภัณฑ์เป็นการวัดร่วมเพื่อกำหนด ค่าใช้จ่ายทั้งหมดหรือต้นทุนการผลิต - ต้นทุนต่อหน่วยการผลิต, ต้นทุนค่าแรงรวม - ต้นทุนค่าแรงต่อหน่วยการผลิต เป็นต้น

การเปลี่ยนแปลงรวมของการหมุนเวียนจากต้นทุนสินค้าขายสามารถกำหนดได้โดยการเปรียบเทียบราคาต้นทุนรวมของสินค้าที่ขายในรอบระยะเวลารายงานในราคาของรอบระยะเวลารายงานกับ ค่าใช้จ่ายทั้งหมดสินค้าที่ขายในช่วงระยะเวลาฐานในราคาช่วงฐาน

สูตรสำหรับดัชนีการหมุนเวียนทั่วไป:


เช่นเดียวกับดัชนีมูลค่าการค้า ดัชนีการผลิต การบริโภค ฯลฯ จะถูกคำนวณ

สูตรข้างต้นสำหรับดัชนีมูลค่าการซื้อขายเรียกว่า รวม (จากภาษาละติน aggrega - "ฉันเพิ่ม") ดัชนีรวมคือดัชนีที่มีตัวเศษและส่วนเป็นผลรวม ผลคูณ หรือผลรวมของผลิตภัณฑ์ในระดับของปรากฏการณ์ทางสถิติที่กำลังศึกษา สูตรดัชนีรวมเป็นสูตรหลักและพบได้บ่อยที่สุดสำหรับเศรษฐศาสตร์

เด็กซ์ สูตรรวมของดัชนีแสดงการเปลี่ยนแปลงสัมพัทธ์ในการศึกษา กระบวนการทางเศรษฐกิจและขอบเขตที่แท้จริงของการเปลี่ยนแปลงนี้

การคำนวณดัชนีราคารวมโดยใช้สูตรนี้เสนอโดยนักเศรษฐศาสตร์ชาวเยอรมัน G. Paasche ดังนั้นจึงมักเรียกว่าดัชนี Paasche

3. น้ำหนักของดัชนีราคารวมและปริมาณการผลิตจริง

สูตรรวมของดัชนีมูลค่าการซื้อขายทางการค้าแสดงให้เห็นว่ามูลค่าของมันขึ้นอยู่กับปรากฏการณ์สองประการ โดยมีสองตัวแปร ได้แก่ ปริมาณทางกายภาพของมูลค่าการซื้อขายทางการค้า เช่น จำนวนสินค้าที่ขาย และราคาของสินค้าแต่ละหน่วยที่ขาย เพื่อระบุอิทธิพลของแต่ละตัวแปรแยกกัน ควรยกเว้นอิทธิพลของตัวแปรตัวใดตัวหนึ่งนั่นคือควรได้รับการยอมรับอย่างมีเงื่อนไขว่าเป็นค่าคงที่และไม่เปลี่ยนแปลงในระดับการรายงานหรือรอบระยะเวลาฐาน ให้เราพิจารณาคำถามว่าควรใช้ช่วงใดเป็นค่าคงที่โดยใช้ตัวอย่างดัชนีราคาและดัชนีปริมาณการซื้อขายจริง

ดัชนีราคารวม การเปลี่ยนแปลงราคาโดยรวมสามารถกำหนดได้หากเราพิจารณาจำนวนสินค้าที่ขายระหว่างการรายงานหรือรอบระยะเวลาฐานเป็นค่าคงที่ หากต้องการรับดัชนีราคา หากเราใช้ข้อมูลน้ำหนักของจำนวนสินค้าที่ขายในช่วงระยะเวลาการรายงาน เราจะได้สูตรต่อไปนี้สำหรับดัชนีราคารวม:


ที่ไหน พี 1 และ 0 – หน่วยของสินค้าที่ขายในรอบระยะเวลาการรายงานและฐาน

ถาม 1 – จำนวนสินค้าที่ขายในรอบระยะเวลารายงาน

หากเราใช้ข้อมูลน้ำหนักกับจำนวนสินค้าที่ขายในช่วงเวลาฐาน สูตรสำหรับดัชนีราคารวมจะอยู่ในรูปแบบ:


สูตรผลลัพธ์สำหรับดัชนีราคารวมที่มีการรายงานและน้ำหนักพื้นฐานไม่เหมือนกัน

ค่าของดัชนีขึ้นอยู่กับตัวบ่งชี้ที่จัดทำดัชนี นั่นคือปริมาณที่เราต้องพิจารณาการเปลี่ยนแปลง และปัจจัยที่ถือเป็นน้ำหนัก และขึ้นอยู่กับข้อมูลที่นำมาเป็นน้ำหนัก ข้อมูลเหล่านี้เป็นข้อมูลจาก ฐานหรือรอบระยะเวลาการรายงาน เราจะได้ดัชนีที่แตกต่างกันสองดัชนี

ดัชนีแรกแสดงการเปลี่ยนแปลงในราคาของรอบระยะเวลารายงานเมื่อเปรียบเทียบกับฐานสำหรับผลิตภัณฑ์ที่ขายในรอบระยะเวลารายงาน และการประหยัดจริงจากการลดราคา

ดัชนีอื่นแสดงจำนวนราคาที่เปลี่ยนแปลงในช่วงเวลารายงานเมื่อเทียบกับราคาพื้นฐาน แต่สำหรับผลิตภัณฑ์ที่ขายในช่วงเวลาฐานเท่านั้น และการประหยัดที่อาจเกิดขึ้นอันเป็นผลมาจากราคาที่ต่ำกว่า

การประหยัดจริงที่แน่นอนจากการลดราคาในรอบระยะเวลารายงานถูกกำหนดดังนี้:


การประหยัดแบบมีเงื่อนไขสัมบูรณ์ในช่วงเวลาฐาน:


ในการคำนวณดัชนีราคาจำเป็นต้องเปรียบเทียบราคาต้นทุนสินค้าที่ขายในรอบระยะเวลารายงานด้วยราคาของรอบระยะเวลารายงานกับต้นทุนของสินค้าเดียวกัน แต่ในราคาของรอบระยะเวลาฐาน

ดัชนีราคารวมคือเศษส่วนที่ตัวเศษและส่วนประกอบด้วยสองปัจจัย หนึ่งในนั้นคือปริมาณที่มีการจัดทำดัชนีแบบแปรผัน (p 1 และ p 0) และค่าที่สองได้รับการยอมรับตามเงื่อนไขว่าเป็นค่าคงที่ - น้ำหนักของดัชนี (ถาม 1 ).

ดัชนีรวมของปริมาณการซื้อขายทางกายภาพ

ดัชนีปริมาณการซื้อขายทางกายภาพ แสดงถึงการเปลี่ยนแปลงของปริมาณทางกายภาพในรอบระยะเวลารายงานที่สัมพันธ์กับฐาน เพื่อให้ดัชนีรวมแสดงเฉพาะการเปลี่ยนแปลงในปริมาณทางกายภาพของมูลค่าการซื้อขาย ราคาคงที่ของฐานและระยะเวลาการรายงานจะถูกนำมาเป็นน้ำหนัก

ราคาคงที่จะเป็นราคาของช่วงฐานเท่านั้น การใช้ราคาคงที่เป็นน้ำหนักทำให้ได้แนวคิดที่ถูกต้องเกี่ยวกับการเปลี่ยนแปลงของปริมาณการซื้อขายทางกายภาพ

ในดัชนีฟิสิคัลวอลุ่ม ปัจจัยของตัวบ่งชี้ที่จัดทำดัชนีจะถูกนำมาใช้ที่ระดับของงวดฐาน

สูตร ดัชนีรวมของปริมาณทางกายภาพของการผลิต:


ที่ไหน? ถาม 1 พี 0 – ต้นทุนของผลิตภัณฑ์ของรอบระยะเวลารายงานในราคาฐาน

?ถาม 0 พี 0 – ต้นทุนของผลิตภัณฑ์ในช่วงเวลาฐาน ณ ราคาในช่วงเวลาเดียวกัน

การเปลี่ยนแปลงสัมบูรณ์ในปริมาตรทางกายภาพคำนวณเป็นความแตกต่างระหว่างตัวเศษและตัวส่วนของดัชนีหรือไม่ ถาม 1 พี 0 – ?ถาม 0 พี 0


น้ำหนักคงที่และแปรผันของดัชนีรวม

หากคำนวณดัชนีเป็นเวลาหลายช่วงระยะเวลา ก็สามารถใช้น้ำหนักเดียวกันสำหรับดัชนีทั้งหมดได้ - ดัชนีที่มีน้ำหนักคงที่ หรือสำหรับแต่ละช่วงน้ำหนักของตัวเอง - ดัชนีที่มีน้ำหนักแปรผัน

ตามทฤษฎีแล้ว ดัชนีมีสี่ประเภทที่เป็นไปได้

1. ดัชนีราคาพื้นฐานทั่วไปที่มีน้ำหนักคงที่ (พื้นฐาน):


2. ดัชนีราคาพื้นฐานทั่วไปที่มีน้ำหนักผันแปร (การรายงาน):


3. ดัชนีราคาลูกโซ่ทั่วไปที่มีน้ำหนักคงที่:


4. ดัชนีราคาโซ่ทั่วไปที่มีน้ำหนักแปรผัน:


ดัชนีเหล่านี้ได้มาจากการเปรียบเทียบราคาของแต่ละช่วงเวลาที่ตามมากับช่วงเวลาก่อนหน้า แต่จะถ่วงน้ำหนักในแต่ละกรณีด้วยจำนวนสินค้าของรอบระยะเวลารายงาน

ดัชนีเหล่านี้สะท้อนถึงการเปลี่ยนแปลงของราคาในช่วงระยะเวลาติดต่อกันและการเปลี่ยนแปลงโครงสร้างของสินค้าที่ขาย

เพื่อระบุลักษณะการเปลี่ยนแปลงของราคาเมื่อเปรียบเทียบกับช่วงเริ่มต้นโดยไม่คำนึงถึงการเปลี่ยนแปลงโครงสร้างของสินค้าที่ผลิต จะใช้ดัชนีพื้นฐานทั่วไปที่มีน้ำหนักคงที่ เพื่อจุดประสงค์เดียวกัน แต่คำนึงถึงการเปลี่ยนแปลงในโครงสร้าง ดัชนีพื้นฐานที่มีน้ำหนักแปรผัน ถูกนำมาใช้ เพื่อกำหนดการเปลี่ยนแปลงของราคาในแต่ละช่วงเวลาเมื่อเทียบกับช่วงก่อนหน้าโดยไม่คำนึงถึงการเปลี่ยนแปลงในโครงสร้างของสินค้าที่ขาย จะใช้ดัชนีลูกโซ่ที่มีน้ำหนักคงที่ โดยคำนึงถึงการเปลี่ยนแปลงในโครงสร้าง จะใช้ดัชนีลูกโซ่ที่มีน้ำหนักแปรผัน .

การเลือกระยะเวลาการถ่วงน้ำหนักดัชนีขึ้นอยู่กับว่าดัชนีใดถูกคำนวณ: ดัชนีตัวบ่งชี้เชิงปริมาณ (ปริมาณ) หรือเชิงคุณภาพ

4. ดัชนีรวมอื่นๆ

มาดูดัชนีรวมบางส่วนกัน

1. ดัชนีต้นทุนสินค้าแสดงจำนวนครั้งที่ต้นทุนในรอบระยะเวลารายงานโดยเฉลี่ยสูงหรือต่ำกว่าฐานหรือต้นทุนที่วางแผนไว้ รวมถึงจำนวนการออมที่แน่นอนหรือส่วนเกินอันเป็นผลมาจากการเปลี่ยนแปลงต้นทุน ดัชนีต้นทุนเป็นดัชนีชี้วัดคุณภาพ

lei และคำนวณโดยน้ำหนัก (ปริมาตร) ของผลิตภัณฑ์ของรอบระยะเวลารายงาน:


ที่ไหน z 1 , – ต้นทุนต่อหน่วยการผลิตในรอบระยะเวลารายงาน

z 0 – ต้นทุนต่อหน่วยการผลิตในช่วงฐาน (หรือการวางแผน)

ถาม 1 – ปริมาณของผลิตภัณฑ์ในรอบระยะเวลารายงาน

2. ดัชนีผลิตภาพแรงงานผลิตภาพแรงงานถูกกำหนดโดยจำนวนผลิตภัณฑ์ที่ผลิตต่อหน่วยเวลา หรือต้นทุนของเวลาทำงานในการผลิตหน่วยผลิตภัณฑ์ ในการพิจารณาการเปลี่ยนแปลงผลิตภาพแรงงานในช่วงเวลารายงานเมื่อเทียบกับรอบระยะเวลาฐาน คุณต้องใช้เวลาทำงานในการผลิตหน่วยผลผลิตในช่วงเวลาฐาน (ต 0 ) หารด้วยต้นทุนเวลาทำงานในการผลิตหน่วยผลผลิตในรอบระยะเวลารายงาน

3. ดัชนีผลิตภาพแรงงานส่วนบุคคลมีค่าเท่ากับ:


ในการสร้างดัชนีผลิตภาพแรงงานโดยรวม จำเป็นต้องชั่งน้ำหนักเวลาทำงานที่ใช้ในการผลิตผลิตภัณฑ์หนึ่งหน่วยตามจำนวนผลิตภัณฑ์ที่ผลิตในช่วงเวลารายงาน:

ที่ไหน ที 1 ถาม 1 – เวลาจริงที่ใช้ในการผลิตผลิตภัณฑ์ทั้งหมดในรอบระยะเวลารายงาน


ที 0 ถาม 1 แสดงระยะเวลาที่ใช้ในการผลิตผลิตภัณฑ์ทั้งหมดของรอบระยะเวลารายงานในช่วงเวลาฐาน

ดัชนีผลิตภาพแรงงานรวมคำนวณตามปริมาณการผลิตของรอบระยะเวลารายงาน

4. ดัชนีความเข้มข้นของแรงงานระบุลักษณะการเปลี่ยนแปลงความเข้มแรงงานของหน่วยการผลิตในรอบระยะเวลารายงานเมื่อเปรียบเทียบกับรอบระยะเวลาฐาน ค่าของดัชนีความเข้มข้นของแรงงานจะแปรผกผันกับค่าของดัชนีผลิตภาพแรงงาน ซึ่งคำนวณจากเวลาที่ใช้ในการผลิตหน่วยผลผลิต สูตรดัชนีส่วนบุคคล:


และผลรวม:


ดัชนีความเข้มข้นของแรงงานเป็นดัชนีของตัวชี้วัดคุณภาพ และยังคำนวณโดยใช้น้ำหนักของรอบระยะเวลารายงานด้วย

5. ดัชนีการดำเนินการตามแผนเมื่อทำการคำนวณ ข้อมูลจริงจะถูกเปรียบเทียบกับข้อมูลที่วางแผนไว้ และสามารถวางแผนน้ำหนักของดัชนีและเป็นตัวบ่งชี้ตามจริงได้

6. ค่าเฉลี่ยเลขคณิตและดัชนีค่าเฉลี่ยฮาร์มอนิกดัชนีรวมของราคา ปริมาณการซื้อขายจริง

และอื่นๆ สามารถคำนวณได้หากทราบปริมาณและน้ำหนักที่ทำดัชนี เช่น p และ q สมมติว่ามี pq ผลิตภัณฑ์และดัชนีแต่ละรายการ ปัญหาเกิดขึ้นจากการสร้างดัชนีเฉลี่ยที่เหมือนกันกับดัชนีรวมโดยการหาค่าเฉลี่ยดัชนีแต่ละรายการ ปัญหานี้แก้ไขได้โดยการแปลงดัชนีรวมให้เป็นค่าเฉลี่ยเลขคณิตและดัชนีค่าเฉลี่ยฮาร์มอนิก การแปลงดัชนีรวมเป็นค่าเฉลี่ยเลขคณิตสามารถพิจารณาได้โดยใช้ตัวอย่างของดัชนีรวมของปริมาณทางกายภาพของมูลค่าการซื้อขาย ในกรณีนี้ ดัชนีแต่ละตัวจะต้องได้รับการถ่วงน้ำหนักโดยตัวเปรียบเทียบพื้นฐาน จากดัชนีแต่ละรายการของปริมาณการซื้อขายทางกายภาพ i q = q 1 / q 0 ตามมาด้วย q 1 = i q / q 0

หากเราแทนที่ q 1 ในตัวเศษของดัชนีรวมของปริมาณทางกายภาพของมูลค่าการซื้อขาย I q = ?q 1 P 0 / ?q 0 P 0 ด้วย i q q 0 เราจะได้ i q = ?i q q 0 p 0 / ?q 0 p 0 .

นี้ ดัชนีเฉลี่ยเลขคณิตของปริมาณทางกายภาพของมูลค่าการซื้อขาย

แต่ถ้าไม่ทราบค่าแต่ละค่าของ q 1 และ p 1 แต่ได้รับผลิตภัณฑ์ q 1 p 1 - การหมุนเวียนของรอบระยะเวลาการรายงานและดัชนีราคาแต่ละรายการ i p = p 1 / p 0 และดัชนีสรุปคือ คำนวณด้วยน้ำหนักการรายงาน จากนั้นจะใช้ดัชนีราคาเฉลี่ยฮาร์มอนิก จำเป็นต้องชั่งน้ำหนักดัชนีแต่ละตัวเพื่อให้ดัชนีเฉลี่ยฮาร์มอนิกเกิดขึ้นพร้อมกับดัชนีรวม จากสูตร i p = p 1 / p 0 เรากำหนดค่าที่ไม่รู้จัก p 0 และแทนที่ค่า p 0 = p 1 / i p ในสูตรสำหรับดัชนีราคารวม I p = ?q 1 P 1 / ?q 0 P 0 เราจะได้ I p = ? P 1 q 1 / ?(p 1 / i p)q 1 = ?p 1 q 1 / ?(p 1 q 1 / i p)

ดัชนีนี้เรียกว่า ค่าเฉลี่ยฮาร์มอนิก

7. ดัชนีค่าเฉลี่ย

ดัชนีองค์ประกอบที่แปรผันและคงที่

บางครั้งเมื่อศึกษาพลวัตของปรากฏการณ์ทางสังคมจะสังเกตได้ว่าระดับของมันแสดงเป็นค่าเฉลี่ย (ต้นทุนเฉลี่ย, ค่าเฉลี่ย ค่าจ้าง, ผลิตภาพแรงงานเฉลี่ย เป็นต้น) พลวัตของตัวบ่งชี้ค่าเฉลี่ยขึ้นอยู่กับการเปลี่ยนแปลงพร้อมกันในตัวเลือกที่สร้างค่าเฉลี่ยและการเปลี่ยนแปลงในน้ำหนักเฉพาะของตัวเลือกเหล่านี้ เช่น โครงสร้างของปรากฏการณ์ที่กำลังศึกษา

การเปลี่ยนแปลงในพลวัตของค่าเฉลี่ยของกระบวนการทางสถิติหรือปรากฏการณ์ที่กำลังศึกษาสามารถได้รับอิทธิพลพร้อมกันจากปัจจัยสองประการ ได้แก่ การเปลี่ยนแปลงตัวบ่งชี้ค่าเฉลี่ยและการเปลี่ยนแปลงโครงสร้าง การศึกษาผลรวมของปัจจัยเหล่านี้ต่อการเปลี่ยนแปลงโดยรวมในพลวัตของระดับเฉลี่ยของปรากฏการณ์ตลอดจนบทบาทและอิทธิพลของแต่ละปัจจัยแยกกันในพลวัตโดยรวมของค่าเฉลี่ยนั้นดำเนินการในสถิติโดยใช้ ระบบดัชนีสัมพันธ์กัน มีดัชนีองค์ประกอบแปรผันและคงที่ ให้เราพิจารณาการก่อสร้างและเนื้อหาโดยใช้ตัวอย่างดัชนีต้นทุนผลิตภัณฑ์

มูลค่าของดัชนีต้นทุนผลิตภัณฑ์ได้รับผลกระทบจากการเปลี่ยนแปลงต้นทุนต่อหน่วยของการผลิตในแต่ละบริษัท และการเปลี่ยนแปลงในบทบาทของแต่ละบริษัทในปริมาณผลผลิตรวม ดัชนีทั่วไปถูกกำหนดให้เป็นอัตราส่วนของค่าเฉลี่ยสองค่าต่อไปนี้:



เรียกว่าดัชนีที่สะท้อนการเปลี่ยนแปลงของค่าเฉลี่ยเนื่องจากอิทธิพลของค่าดัชนีที่มีน้ำหนักคงที่ ดัชนีองค์ประกอบคงที่ (คงที่)

การสลายตัวของดัชนีทั่วไปเป็นปัจจัยทำให้สามารถกำหนดบทบาทของแต่ละปัจจัยในการเปลี่ยนแปลงโดยรวมของปรากฏการณ์ในแง่สัมพัทธ์และสัมบูรณ์

การศึกษาพลวัตของตัวบ่งชี้เฉลี่ยโดยใช้วิธีดัชนีนั้นเป็นไปได้เฉพาะหลังจากแบ่งข้อมูลประชากรออกเป็นกลุ่มตามลักษณะที่แสดงลักษณะการเปลี่ยนแปลงโครงสร้างและการคำนวณค่าเฉลี่ยกลุ่ม ดังนั้นการใช้วิธีดัชนีในการดำเนินการวิเคราะห์ปัจจัยและศึกษาการเปลี่ยนแปลงเชิงโครงสร้างจึงมีความเกี่ยวข้องอย่างใกล้ชิดกับวิธีการจัดกลุ่ม

เพื่อวิเคราะห์พลวัตของตัวชี้วัดเฉลี่ย สามารถนำเสนอระบบดัชนีที่สัมพันธ์กันในรูปแบบต่อไปนี้:


โดยที่ x1 และ x0 คือระดับของตัวบ่งชี้เฉลี่ยในรอบระยะเวลาการรายงานและฐาน ตามลำดับ

f1 และ f2 – น้ำหนัก (ความถี่) ของตัวบ่งชี้เฉลี่ยในรอบระยะเวลาการรายงานและฐาน

ในระบบดัชนีที่เกี่ยวข้องกันข้างต้น เมื่อสร้างดัชนีขององค์ประกอบคงที่ โครงสร้างของรอบระยะเวลาการรายงานจะถือเป็นน้ำหนัก ซึ่งทำให้สามารถติดตามการเปลี่ยนแปลงได้ ไดนามิกเฉลี่ยปรากฏการณ์ภายใต้การศึกษาเนื่องจากการเปลี่ยนแปลงค่าเฉลี่ยของตัวบ่งชี้เชิงคุณภาพเท่านั้น เมื่อสร้างดัชนีการเปลี่ยนแปลงโครงสร้างค่าของตัวบ่งชี้เฉลี่ยที่ระดับระยะเวลาฐานจะถูกนำมาใช้เป็นตัววัดร่วมซึ่งทำให้เรามีโอกาสศึกษาการเปลี่ยนแปลงในพลวัตเฉลี่ยของปรากฏการณ์เนื่องจากการเปลี่ยนแปลงโครงสร้างเท่านั้น .

ดัชนีอาณาเขต (เชิงพื้นที่)

จำเป็นต้องมีดัชนีอาณาเขตเพื่อเปรียบเทียบตัวบ่งชี้ในอวกาศ เช่น ตามองค์กร เขต เมือง เขต ฯลฯ ในการสร้างดัชนีเชิงพื้นที่ จำเป็นต้องแก้ไขปัญหาด้านระเบียบวิธีหลายประการที่เกี่ยวข้องกับการเลือกฐานการเปรียบเทียบและ น้ำหนักหรือระดับที่จะบันทึกน้ำหนัก

ในการเปรียบเทียบแบบทวิภาคี แต่ละอาณาเขตสามารถนำมาเปรียบเทียบและเป็นฐานในการเปรียบเทียบได้ น้ำหนักของดินแดนเหล่านี้มีเหตุผลเท่ากันในการคำนวณดัชนี อย่างไรก็ตาม สิ่งนี้อาจนำไปสู่ผลลัพธ์ที่แตกต่างหรือขัดแย้งกัน และสามารถหลีกเลี่ยงได้หลายวิธี

วิธีหนึ่งคือการชั่งน้ำหนักปริมาณสินค้าที่ขายประเภทที่ i (I = 1, 2, 3, ... n) ในสองภูมิภาครวมกัน:

ถาม 1 = qia + qib

ดัชนีราคาอาณาเขตในกรณีนี้คำนวณโดยใช้สูตร:


วิธีที่สองในการคำนวณดัชนีอาณาเขตจะพิจารณาอัตราส่วนของน้ำหนักในแต่ละดินแดนที่เปรียบเทียบ ด้วยวิธีนี้ ขั้นตอนแรกคือการคำนวณราคาเฉลี่ยของผลิตภัณฑ์แต่ละรายการสำหรับสองดินแดนรวมกัน:


หลังจากนั้นจะคำนวณดัชนีอาณาเขต

ดัชนี

วิธีดัชนีเป็นหนึ่งในวิธีที่ใช้กันทั่วไปในการวิเคราะห์ทางสถิติของปรากฏการณ์ทางเศรษฐกิจ ใช้ดัชนี เศรษฐกิจของประเทศโดยรวมและแต่ละภาคส่วน ตลอดจนกิจกรรมขององค์กร สมาคม บริษัท ฟาร์ม ฯลฯ ได้รับการศึกษา มีการเปิดเผยพลวัตของการพัฒนาปรากฏการณ์ทางเศรษฐกิจและสังคมการวิเคราะห์การดำเนินการตามแผนหรือบรรทัดฐาน มีการกำหนดอิทธิพลของปัจจัยส่วนบุคคลต่อผลลัพธ์โดยรวม มีการเปิดเผยปริมาณสำรองการผลิต มีการเปรียบเทียบตัวชี้วัดทางเศรษฐกิจในอาณาเขตและระหว่างประเทศ

ดัชนีในสถิติเป็นตัวบ่งชี้สัมพัทธ์ที่แสดงลักษณะความสัมพันธ์ในเวลาเปรียบเทียบกับแผนหรือในอวกาศของระดับของปรากฏการณ์ทางเศรษฐกิจและสังคม เนื่องจากดัชนีเป็นตัวบ่งชี้ที่สัมพันธ์กัน จึงได้มาจากอัตราส่วนของสองค่าเสมอ: การรายงาน (หรือปัจจุบัน) นั่นคือค่าที่ถูกเปรียบเทียบ และค่าพื้นฐาน นั่นคือ ค่าที่มีระดับของค่าการรายงาน ถูกเปรียบเทียบ หากใช้ระดับของปรากฏการณ์ในช่วงระยะเวลาที่ผ่านมาเป็นพื้นฐานของการเปรียบเทียบ จะได้ดัชนีไดนามิก หากใช้ระดับของปรากฏการณ์ในดินแดนอื่นเป็นพื้นฐานของการเปรียบเทียบ จะได้ดัชนีอาณาเขต

ในสูตร ระบบสมการ แบบจำลองทางเศรษฐศาสตร์และคณิตศาสตร์ ข้อมูลปัจจุบันจะมีหน่วยกำกับไว้ด้านล่างการกำหนดตัวอักษรของค่า ตัวอย่างเช่น: p 1 ข้อมูลที่ใช้เป็นพื้นฐานสำหรับการเปรียบเทียบจะถูกทำเครื่องหมายด้วยศูนย์: p 0 (ในทางคณิตศาสตร์ การกำหนดดังกล่าวเรียกว่าดัชนี ในสถิติ - ตัวห้อย) เช่นเดียวกับค่าสัมพัทธ์ใดๆ ดัชนีจะแสดงในรูปแบบ เป็นรูปสัมประสิทธิ์ถ้าเอาหนึ่งร้อยเป็นฐาน หรือเป็นรูปเปอร์เซ็นต์ถ้าเอาหนึ่งร้อยเป็นฐาน

ปรากฏการณ์ทางเศรษฐกิจและสังคมที่ศึกษาโดยสถิติมักประกอบด้วยองค์ประกอบหลายประการ ดังนั้นผลผลิตรวมของผลิตภัณฑ์และบริการจึงรวมถึงมูลค่าของสินค้าและบริการขั้นสุดท้ายที่สร้างขึ้นโดยกิจกรรมทางเศรษฐกิจทุกประเภทที่จัดระเบียบทางสังคมและในทุกภาคส่วนของเศรษฐกิจ กล่าวอีกนัยหนึ่งผลผลิตรวมของผลิตภัณฑ์และบริการประกอบด้วยผลิตภัณฑ์และบริการหลายประเภท

ดัชนีจะถูกคำนวณทั้งสำหรับองค์ประกอบแต่ละส่วนของปรากฏการณ์ที่ซับซ้อนและสำหรับปรากฏการณ์ที่ซับซ้อนทั้งหมดโดยรวม ในกรณีแรกพวกเขาจะเรียกว่า รายบุคคลและถูกกำหนดด้วยตัวอักษรละติน i และในวินาที - ทั่วไปและเขียนแทนด้วย I ดัชนีแต่ละรายการประกอบด้วยดัชนีที่แสดงลักษณะการเปลี่ยนแปลงในผลผลิตของผลิตภัณฑ์ประเภทใดประเภทหนึ่ง (ดัชนีการถลุงเหล็ก การผลิตปุ๋ยโปแตช การผลิตโทรทัศน์ ฯลฯ) ดัชนีที่แสดงลักษณะการเปลี่ยนแปลงในราคาของผลิตภัณฑ์ใด ๆ (จักรยาน ซีเมนต์ เนื้อวัว ฯลฯ ) ต้นทุนของผลิตภัณฑ์แต่ละรายการ ฯลฯ

ดัชนีที่คำนวณสำหรับปรากฏการณ์ที่ซับซ้อนทั้งหมด เช่น ทั่วไป รวมถึงดัชนีที่แสดงลักษณะการเปลี่ยนแปลงของผลผลิตของผลิตภัณฑ์ทั้งหมดขององค์กร อุตสาหกรรม ฯลฯ การเปลี่ยนแปลงของราคาสำหรับกลุ่มสินค้าหรือสินค้าทั้งหมด หรือชุดของ สินค้าและบริการด้านอาหารและไม่ใช่อาหารรวมอยู่ใน "ตะกร้าผู้บริโภค" การเปลี่ยนแปลงของต้นทุนของผลิตภัณฑ์จำนวนหนึ่ง

เพื่อความสะดวกในการสร้างดัชนีในทฤษฎีสถิติจึงมีการพัฒนาสัญลักษณ์เช่น แต่ละค่าที่วิเคราะห์มีการกำหนดของตัวเอง ดังนั้นจำนวนหน่วยของผลิตภัณฑ์ที่ผลิตหรือขายประเภทที่กำหนดจะแสดงด้วย - q ราคาของหน่วยผลิตภัณฑ์ - p ต้นทุนของหน่วยผลิตภัณฑ์ - z ความเข้มแรงงานของหน่วยผลิตภัณฑ์ - เสื้อ, ผลลัพธ์ต่อคนงาน - w, ปริมาณการใช้วัสดุ (เชื้อเพลิง) เฉพาะ, เช่น, ปริมาณการใช้วัสดุ (เชื้อเพลิง) ต่อหน่วยการผลิต, - m เป็นต้น

ดังนั้นดัชนีฟิสิคัลวอลุ่มแต่ละรายการจะมีรูปแบบดังนี้

สูตรสำหรับดัชนีราคาแต่ละรายการจะเป็น:

และดัชนีต้นทุนรายบุคคล:

การจำแนกดัชนี:



ดัชนีทั่วไปใช้เพื่อเปรียบเทียบปรากฏการณ์ที่ต่างกันและไม่สามารถเทียบเคียงได้โดยตรง ตัวอย่างเช่น การใช้ดัชนีทั่วไป สามารถระบุลักษณะไดนามิกของผลผลิตของอุตสาหกรรมทั้งหมด หรือไดนามิกของปริมาณของผลผลิตทั้งหมดที่โรงงานเฟอร์นิเจอร์ที่ผลิตผลิตภัณฑ์ประเภทต่างๆ: โต๊ะ อาร์มแชร์ โซฟา ตู้ อย่างไรก็ตาม คุณไม่สามารถรวมปริมาณของผลิตภัณฑ์ประเภทต่างๆ เข้าด้วยกันเป็นเวลาสองช่วงเวลาและระบุแหล่งที่มาของจำนวนเหล่านี้ให้กันและกันได้ การรวมดังกล่าวไม่มีความหมายไม่เพียงเพราะหน่วยการวัดที่แตกต่างกัน (ตัน ชิ้น เมตร ฯลฯ) แต่ยังเป็นเพราะผลิตภัณฑ์แต่ละประเภทมีวัตถุประสงค์ของตัวเองและผลิตขึ้นด้วยต้นทุนเงินทุนและเวลาที่จำเป็นทางสังคมที่แตกต่างกัน

เพื่อให้ปรากฏการณ์ที่ไม่สามารถเทียบเคียงได้ (หรือองค์ประกอบ) เปรียบเทียบได้ จำเป็นต้องแสดงปรากฏการณ์เหล่านั้นด้วยมาตรการทั่วไป ต้นทุน ค่าแรง ฯลฯ ปัญหานี้แก้ไขได้ด้วยการสร้างและคำนวณดัชนีทั่วไป รูปแบบหลักของดัชนีทั่วไปคือดัชนีรวม

ดัชนีรวมประกอบด้วย 2 องค์ประกอบ:

2. ตัวชี้วัดที่ทำหน้าที่เป็นผู้ตรวจวัดร่วม (ตาชั่ง)

ผลิตภัณฑ์ของปริมาณที่จัดทำดัชนีและผู้วัดร่วม (น้ำหนัก) ควรให้หมวดหมู่ทางเศรษฐกิจที่แน่นอน (pq, Yq, tq ฯลฯ)

กฎสำหรับการสร้างดัชนีรวม:

1. หากมีการสร้างดัชนีของตัวบ่งชี้เชิงคุณภาพ ตัวชี้วัดจะทำหน้าที่เป็นน้ำหนัก ระยะเวลาการรายงาน.

2. หากมีการสร้างดัชนีของตัวบ่งชี้เชิงปริมาณ ตัวชี้วัดของช่วงฐานจะทำหน้าที่เป็นน้ำหนัก

ดัชนีต้นทุนผลิตภัณฑ์รวม:

ใช่ครับ

พี 0 ?ถาม 0, พี 1 ?ถาม 1 - ต้นทุนของผลิตภัณฑ์ที่ผลิตตามลำดับในช่วงเวลาฐานและรอบระยะเวลารายงาน

ใช่ - บ่งบอกถึงการเปลี่ยนแปลง ต้นทุนที่แท้จริงของผลิตภัณฑ์ที่ผลิตตามรายการที่วิเคราะห์:

ความสัมพันธ์:

การเปลี่ยนแปลงโดยสมบูรณ์:

Pq = ?p1?q1-?p0?q0 ?pq=?pqp +?pqq

ดัชนีราคารวม:

ใช่

พี 0 ,หน้า 1 - ราคาของผลิตภัณฑ์แต่ละประเภทตามลำดับตามฐานและรอบระยะเวลารายงาน

ถาม 1 - ปริมาณของผลิตภัณฑ์แต่ละประเภทในรอบระยะเวลารายงาน

ใช่ - ระบุว่าราคาของผลิตภัณฑ์ประเภทต่างๆ มีการเปลี่ยนแปลงโดยเฉลี่ยอย่างไร

ความสัมพันธ์:

การเปลี่ยนแปลงโดยสมบูรณ์:

?pq พี = ?พี 1 ?ถาม 1 -?หน้า 0 ?ถาม 1

ดัชนีรวมของฟิสิคัลวอลุ่ม:

ใช่

q0 คือปริมาณของผลิตภัณฑ์แต่ละประเภทในช่วงเวลาฐาน

ใช่ - ระบุว่าค่าเฉลี่ยมีการเปลี่ยนแปลงอย่างไร ปริมาณโดยรวมสินค้าตามรายการวิเคราะห์:

ความสัมพันธ์:

การเปลี่ยนแปลงโดยสมบูรณ์:

Pqq = ?q1?p0-?q0?p0

ดัชนีเฉลี่ย- ประเภทของดัชนีทั่วไปซึ่งคำนวณเป็นค่าของดัชนีแต่ละรายการ (เป็นค่าเฉลี่ยเลขคณิตหรือเป็นค่าเฉลี่ยฮาร์มอนิก)

มี:

-ดัชนีถ่วงน้ำหนักเฉลี่ยเลขคณิต - ได้มาจากการรวมหากเราแทนที่ค่าของตัวบ่งชี้ที่จัดทำดัชนีของรอบระยะเวลาการรายงานในตัวเศษด้วยผลคูณที่เท่ากันของมูลค่าของดัชนีแต่ละรายการและมูลค่าของค่าที่จัดทำดัชนีของรอบระยะเวลาฐาน

ตัวอย่างเช่น: ดัชนีถ่วงน้ำหนักเฉลี่ยเลขคณิตของปริมาณการผลิต:

มันถูกใช้แทนดัชนีรวมของตัวชี้วัดเชิงปริมาณ

-ดัชนีถ่วงน้ำหนักฮาร์มอนิกเฉลี่ย - ได้รับจากการรวมเฉพาะในตัวส่วนเท่านั้นค่าของค่าที่จัดทำดัชนีของช่วงเวลาฐานจะถูกแทนที่ด้วยอัตราส่วนที่เท่ากันของมูลค่าของค่าที่จัดทำดัชนีของระยะเวลาการรายงานต่อมูลค่าของดัชนีแต่ละรายการ

ตัวอย่างเช่น: ดัชนีราคาเฉลี่ยถ่วงน้ำหนักฮาร์มอนิก:

มันถูกใช้แทนดัชนีรวมของตัวชี้วัดคุณภาพ

ปรากฏการณ์ทางเศรษฐกิจมักถูกกำหนดลักษณะโดยใช้ค่าเฉลี่ย โดยเฉพาะอย่างยิ่ง ตัวชี้วัดคุณภาพทั้งหมดมักจะแสดงเป็นค่าเฉลี่ย: ราคาเฉลี่ยหน่วยการผลิต () ต้นทุนเฉลี่ยหน่วยของผลิตภัณฑ์ (), ค่าจ้างเฉลี่ยต่อคนงาน (), ผลผลิตเฉลี่ยต่อคนงาน (), ความเข้มแรงงานเฉลี่ยต่อผลิตภัณฑ์ () เป็นต้น เพื่อศึกษาพลวัตของตัวบ่งชี้ดังกล่าว จะใช้ดัชนีค่าเฉลี่ย (ระดับเฉลี่ย) ในการปฏิบัติทางสถิติ

ลองพิจารณาการสร้างดัชนีเหล่านี้โดยใช้ตัวอย่างพลวัตของความเข้มแรงงานเฉลี่ยต่อหน่วยการผลิต (เวลาเฉลี่ยที่ใช้ต่อหน่วยการผลิต)

ดัชนีองค์ประกอบที่แปรผัน:

T 0, t 1 - ระดับความเข้มของแรงงานต่อหน่วยการผลิตตามลำดับสำหรับฐานและรอบระยะเวลาการรายงาน

ดัชนีองค์ประกอบตัวแปร - แสดงลักษณะการเปลี่ยนแปลงในระดับเฉลี่ยโดยรวมเนื่องจากปัจจัยสองประการ: การเปลี่ยนแปลงในระดับเฉลี่ย (ค่าดัชนี t) และอิทธิพลของการเปลี่ยนแปลงโครงสร้างเช่น การเปลี่ยนแปลงน้ำหนักเฉพาะของหน่วยประชากร

ความสัมพันธ์:

เนื่องจากการเปลี่ยนแปลงในระดับของลักษณะที่ได้รับการประเมินและเนื่องจากการเปลี่ยนแปลงโครงสร้าง:

ดัชนีองค์ประกอบคงที่ (คงที่):

ระบุลักษณะที่ระดับของตัวบ่งชี้ที่ศึกษาเปลี่ยนแปลงไปเนื่องจากการเปลี่ยนแปลงของค่าดัชนีโดยตรง (t) เท่านั้น

ความสัมพันธ์:

การเปลี่ยนแปลงโดยสมบูรณ์ในระดับเฉลี่ย:

ดัชนีการเปลี่ยนแปลงโครงสร้าง:

ระบุลักษณะว่าระดับของตัวบ่งชี้ที่ศึกษาเปลี่ยนแปลงไปอย่างไรเนื่องจากอิทธิพลของการเปลี่ยนแปลงโครงสร้างเท่านั้น

ความสัมพันธ์:

การเปลี่ยนแปลงโดยสมบูรณ์ในระดับเฉลี่ย:

ดัชนีทั้งหมดที่กล่าวถึงข้างต้นเปรียบเทียบข้อมูลเป็นระยะเวลาสองช่วง: ฐานและการรายงาน อย่างไรก็ตาม สำหรับการศึกษาเชิงลึกเพิ่มเติมเกี่ยวกับพลวัตของปรากฏการณ์ทางเศรษฐกิจ การระบุรูปแบบและแนวโน้มในการพัฒนา การเปรียบเทียบดัชนีจะดำเนินการเป็นระยะเวลาต่อเนื่องกันหลายช่วง ในกรณีนี้จะมีการคำนวณ ระบบลูกโซ่และดัชนีพื้นฐาน

ดัชนีพื้นฐานเป็นระบบของดัชนีที่คำนวณตามลำดับของปรากฏการณ์เดียวกัน โดยแสดงลักษณะการเปลี่ยนแปลงที่สัมพันธ์กับฐานคงที่ กล่าวคือ ค่าที่จัดทำดัชนีของช่วงฐานจะถือเป็นส่วนของดัชนีที่คำนวณทั้งหมด

ดัชนีที่ถูกล่ามโซ่เรียกว่าระบบดัชนีที่มีปรากฏการณ์เดียวกันโดยแสดงการเปลี่ยนแปลงสัมพันธ์กับฐานที่เปลี่ยนแปลง กล่าวคือ ค่าดัชนีแต่ละค่าจะถูกเปรียบเทียบกับค่าก่อนหน้า

ทางเลือกของระบบดัชนีจะถูกกำหนดโดยงานการวิเคราะห์ เพื่อประเมินอัตราการเปลี่ยนแปลงที่เกิดขึ้นในแต่ละช่วง จะใช้ดัชนีลูกโซ่ หากจุดประสงค์ของการศึกษาคือเพื่อกำหนดการเปลี่ยนแปลงโดยรวม ปรากฏการณ์ทางเศรษฐกิจสำหรับช่วงเวลาทางประวัติศาสตร์ที่เฉพาะเจาะจง ดัชนีฐานจะถูกคำนวณ

ระบบของลูกโซ่และดัชนีพื้นฐานสามารถคำนวณได้ทั้งสำหรับองค์ประกอบที่แยกจากกันของปรากฏการณ์ที่ซับซ้อน (ดัชนีแต่ละรายการ) และสำหรับปรากฏการณ์ที่ซับซ้อนทั้งหมด (ดัชนีทั่วไป) ดัชนีพื้นฐานและดัชนีลูกโซ่แต่ละรายการจะเหมือนกันกับค่าไดนามิกสัมพันธ์พื้นฐานและลูกโซ่

สินค้าตามลำดับ ดัชนีแต่ละลูกโซ่ให้ ไม่มีดัชนีฐานและอัตราส่วน ป-ดัชนีส่วนบุคคลขั้นพื้นฐานไปเป็นดัชนีก่อนหน้า ( n-1) ให้ ป-ไทย ดัชนีลูกโซ่