﻿1
00:00:01,280 --> 00:00:03,110
‫Instruktur: Dalam kuliah

2
00:00:03,110 --> 00:00:06,660
‫ini, kita akan belajar tentang kueri geospasial

3
00:00:06,660 --> 00:00:09,147
‫untuk menerapkan fitur yang sangat

4
00:00:09,147 --> 00:00:12,750
‫keren, yaitu menyediakan fungsi pencarian untuk tur dalam

5
00:00:12,750 --> 00:00:15,313
‫jarak tertentu dari titik tertentu.

6
00:00:17,060 --> 00:00:18,712
‫Jadi, katakanlah Anda

7
00:00:18,712 --> 00:00:22,210
‫tinggal di titik tertentu dan ingin tahu tur mana

8
00:00:22,210 --> 00:00:26,008
‫yang dimulai pada jarak tertentu dari Anda, seperti 250 mil,

9
00:00:26,008 --> 00:00:28,738
‫karena Anda tidak ingin berkendara lebih jauh

10
00:00:28,738 --> 00:00:31,430
‫dari itu untuk memulai pengalaman tur Anda.

11
00:00:31,430 --> 00:00:33,470
‫Jadi itu akan menjadi fitur yang

12
00:00:33,470 --> 00:00:36,413
‫luar biasa, dan kasus penggunaan kueri geospasial yang sangat bagus.

13
00:00:36,413 --> 00:00:39,804
‫Dan untuk mengimplementasikan sesuatu seperti ini, di

14
00:00:39,804 --> 00:00:43,597
‫sini di router tur kami, kami dapat membuat rute

15
00:00:43,597 --> 00:00:45,720
‫yang bagus, seperti ini.

16
00:00:45,720 --> 00:00:50,720
‫Jadi saya akan meletakkannya di sini sebelum rute umum ini di

17
00:00:51,810 --> 00:00:52,643
‫sini.

18
00:00:54,910 --> 00:00:59,910
‫Jadi katakanlah router dot route, dan saya akan

19
00:01:00,580 --> 00:01:05,503
‫menyebut ini sebagai tur di dalam, oke?

20
00:01:06,890 --> 00:01:09,663
‫Kemudian kita juga perlu menentukan jarak.

21
00:01:11,620 --> 00:01:14,503
‫Dan karena itu kami membuat parameter jarak di sini.

22
00:01:15,607 --> 00:01:17,800
‫Selanjutnya, kita juga perlu menentukan pusatnya,

23
00:01:17,800 --> 00:01:20,810
‫dan pada dasarnya itulah titik di mana Anda tinggal.

24
00:01:20,810 --> 00:01:25,810
‫Jadi mari kita tentukan di sekitar pusat dan kemudian garis

25
00:01:27,300 --> 00:01:30,090
‫miring, lalu lintang dan bujur.

26
00:01:30,090 --> 00:01:31,967
‫Jadi pada dasarnya ke dalam variabel

27
00:01:31,967 --> 00:01:34,870
‫ini di sini, Anda ingin memasukkan koordinat tempat

28
00:01:34,870 --> 00:01:35,960
‫Anda berada.

29
00:01:35,960 --> 00:01:37,960
‫Jadi, katakanlah Anda tinggal di

30
00:01:37,960 --> 00:01:40,760
‫Los Angeles dan ingin menemukan semua tur

31
00:01:40,760 --> 00:01:42,390
‫dalam jarak 300 mil.

32
00:01:42,390 --> 00:01:44,520
‫Jadi di sini Anda akan mengatakan

33
00:01:44,520 --> 00:01:46,710
‫300, dan kemudian di sini Anda akan

34
00:01:46,710 --> 00:01:49,570
‫menempatkan koordinat pada dasarnya di mana Anda tinggal, oke?

35
00:01:49,570 --> 00:01:52,610
‫Kemudian, berikan juga opsi untuk menentukan

36
00:01:52,610 --> 00:01:53,443
‫unit.

37
00:01:53,443 --> 00:01:57,910
‫Jadi jika jarak ini di sini dalam kilometer atau dalam mil.

38
00:01:57,910 --> 00:02:01,046
‫Jadi katakanlah, slash

39
00:02:01,046 --> 00:02:05,070
‫unit, dan unit sebagai parameter.

40
00:02:05,070 --> 00:02:07,990
‫Sekarang cara menentukan URL ini adalah sesuatu yang belum

41
00:02:07,990 --> 00:02:09,364
‫pernah kami lakukan sebelumnya.

42
00:02:09,364 --> 00:02:12,634
‫Jadi pada dasarnya mengatakan di sini tengah dan

43
00:02:12,634 --> 00:02:15,521
‫garis miring dan letakkan garis bujur dan

44
00:02:15,521 --> 00:02:17,736
‫garis lintang setelah itu, dan

45
00:02:17,736 --> 00:02:21,510
‫kemudian garis miring unit, dan kemudian setelah itu parameter kueri.

46
00:02:21,510 --> 00:02:22,832
‫Dan tentu saja

47
00:02:22,832 --> 00:02:25,192
‫kita juga bisa membuatnya sehingga pengguna

48
00:02:25,192 --> 00:02:28,303
‫harus menentukan semua opsi ini menggunakan string kueri,

49
00:02:28,303 --> 00:02:33,200
‫tetapi cara ini terlihat jauh lebih bersih dan juga semacam cara standar untuk

50
00:02:33,200 --> 00:02:35,554
‫menentukan URL yang berisi banyak objek.

51
00:02:35,554 --> 00:02:39,200
‫Jadi apa yang saya katakan bahwa alih-alih kita bisa

52
00:02:39,200 --> 00:02:41,274
‫melakukannya tentu saja seperti ini.

53
00:02:41,274 --> 00:02:46,274
‫Tur jarak jauh kemudian pengguna harus menyediakan jarak seperti

54
00:02:49,605 --> 00:02:51,823
‫ini di sini.

55
00:02:53,620 --> 00:02:57,179
‫Dan pusatnya seperti ini, misalkan minus

56
00:02:57,179 --> 00:03:02,179
‫40, dan 45, lalu satuannya juga disetel ke mil.

57
00:03:04,090 --> 00:03:07,121
‫Oke, jadi ini adalah salah satu cara menggunakan string

58
00:03:07,121 --> 00:03:09,343
‫kueri dan kami telah melakukannya sebelumnya.

59
00:03:09,343 --> 00:03:14,100
‫Dan sebenarnya tidak seperti ini, tapi seperti ini.

60
00:03:14,100 --> 00:03:16,740
‫Oke, tapi sebaliknya kita akan

61
00:03:16,740 --> 00:03:19,063
‫menentukannya lagi seperti ini.

62
00:03:20,990 --> 00:03:23,303
‫Yang menurut saya terlihat jauh lebih bagus.

63
00:03:26,040 --> 00:03:28,217
‫Jadi dikurangi 40, 45.

64
00:03:31,650 --> 00:03:33,905
‫Oke, jadi pikirkan bahwa ini di

65
00:03:33,905 --> 00:03:36,610
‫sini benar-benar terlihat jauh lebih bersih daripada ini.

66
00:03:36,610 --> 00:03:39,290
‫Oke, jadi ini adalah hal lain yang

67
00:03:39,290 --> 00:03:41,249
‫ingin saya tunjukkan kepada

68
00:03:41,249 --> 00:03:45,750
‫Anda bahwa itu semacam standar untuk menentukan URL seperti ini, oke?

69
00:03:45,750 --> 00:03:46,971
‫Bagaimanapun, untuk

70
00:03:46,971 --> 00:03:49,753
‫rute ini tentu saja, kita membutuhkan pengendali

71
00:03:49,753 --> 00:03:52,100
‫rute, dan itu akan berada di

72
00:03:52,100 --> 00:03:57,100
‫pengontrol tur, dan sebut saja fungsi pengendali ini mendapatkan tur di dalamnya.

73
00:03:59,530 --> 00:04:02,775
‫Jadi sekarang mari kita lanjutkan dan terapkan metode

74
00:04:02,775 --> 00:04:04,513
‫ini ke handler ini.

75
00:04:06,280 --> 00:04:10,660
‫Jadi pengatur tur dan di bawah sini.

76
00:04:17,970 --> 00:04:20,239
‫Dan mari kita mulai dengan mendapatkan semua parameter.

77
00:04:20,239 --> 00:04:24,253
‫Jadi izinkan saya menyalin semua ini di sini.

78
00:04:25,667 --> 00:04:28,833
‫Dan agar kita tahu seperti apa data kita.

79
00:04:29,810 --> 00:04:30,643
‫Baiklah?

80
00:04:32,570 --> 00:04:35,953
‫Jadi ini, dan kemudian ini memiliki komentar.

81
00:04:42,550 --> 00:04:47,069
‫Baiklah, jadi mari kita gunakan restrukturisasi sederhana untuk

82
00:04:47,069 --> 00:04:51,186
‫mendapatkan semua data kita sekaligus dari parameter.

83
00:04:51,186 --> 00:04:54,477
‫Dan sebenarnya kita

84
00:04:54,477 --> 00:04:59,477
‫perlu mengatakan const, dan distance, dan unit.

85
00:05:01,650 --> 00:05:05,323
‫Jadi semua itu berasal dari request dot params.

86
00:05:08,402 --> 00:05:11,320
‫Oke, jadi pada req. params, kita punya

87
00:05:11,320 --> 00:05:13,990
‫titik jarak, titik pusat, dan unit titik, kan?

88
00:05:13,990 --> 00:05:16,122
‫Karena ini adalah nama dari

89
00:05:16,122 --> 00:05:18,510
‫tiga parameter yang kami tentukan di sini.

90
00:05:18,510 --> 00:05:19,950
‫Dan sebenarnya

91
00:05:19,950 --> 00:05:23,448
‫itu bukan pusat, itu latlng di sini,

92
00:05:23,448 --> 00:05:27,440
‫oke, jadi itu yang benar, dan akhirnya unit.

93
00:05:27,440 --> 00:05:30,190
‫Jadi sekali lagi, kami menggunakan restrukturisasi untuk mendapatkan

94
00:05:30,190 --> 00:05:31,703
‫semua variabel ini sekaligus.

95
00:05:33,438 --> 00:05:35,880
‫Selanjutnya, mari kita dapatkan semua

96
00:05:35,880 --> 00:05:38,730
‫koordinat dari variabel lintang bujur ini di sini.

97
00:05:38,730 --> 00:05:42,826
‫Jadi seperti yang kita lihat, kita mengharapkan data dalam format seperti

98
00:05:42,826 --> 00:05:45,930
‫ini, sehingga sangat mudah untuk menyalin data ini

99
00:05:45,930 --> 00:05:47,610
‫dari Google Maps.

100
00:05:47,610 --> 00:05:49,610
‫Jadi izinkan saya dengan cepat menunjukkannya kepada Anda.

101
00:05:50,573 --> 00:05:53,310
‫Penting bagi Anda untuk memahami bagaimana hal semacam

102
00:05:53,310 --> 00:05:55,563
‫ini juga bekerja dalam praktik.

103
00:05:59,380 --> 00:06:03,323
‫Jadi mari kita gunakan contoh Los Angeles di sini.

104
00:06:07,430 --> 00:06:10,593
‫Oke, jadi katakanlah Anda tinggal di suatu tempat di sini.

105
00:06:12,720 --> 00:06:17,350
‫Oke, jadi Anda bisa dengan mudah mendapatkan garis lintang dan

106
00:06:17,350 --> 00:06:20,124
‫garis bujur seperti ini, oke?

107
00:06:20,124 --> 00:06:24,523
‫Jadi taruh di sini, hanya sebagai contoh lagi.

108
00:06:26,140 --> 00:06:27,840
‫Dan beginilah formatnya.

109
00:06:27,840 --> 00:06:30,483
‫Itu terlihat seperti garis lintang dan garis bujur.

110
00:06:32,610 --> 00:06:36,263
‫Jadi sekarang mari kita buat satu variabel untuk masing-masing variabel.

111
00:06:37,755 --> 00:06:39,170
‫Jadi satu untuk garis lintang dan satu untuk garis bujur.

112
00:06:39,170 --> 00:06:44,170
‫Jadi titik bujur lintang terbelah karena ini adalah string

113
00:06:45,074 --> 00:06:48,940
‫dan kami ingin membaginya dengan koma.

114
00:06:48,940 --> 00:06:51,577
‫Dan itu kemudian akan membuat larik

115
00:06:51,577 --> 00:06:55,180
‫dua elemen, dan sekarang kita dapat kembali menggunakan destructering

116
00:06:55,180 --> 00:06:58,193
‫untuk menyimpannya ke dua variabel yang kita minati.

117
00:07:01,910 --> 00:07:05,073
‫Jadi garis lintang dan garis bujur.

118
00:07:12,110 --> 00:07:15,200
‫Oke, selanjutnya, saya ingin menguji apakah kita benar-benar memiliki

119
00:07:15,200 --> 00:07:17,810
‫variabel bujur dan lintang untuk ditemukan.

120
00:07:17,810 --> 00:07:20,940
‫Karena jika tidak, berarti pengguna tidak menentukannya

121
00:07:20,940 --> 00:07:23,040
‫dalam format yang diperlukan.

122
00:07:23,040 --> 00:07:25,270
‫Jadi katakanlah jika tidak ada

123
00:07:25,270 --> 00:07:30,270
‫garis lintang, atau tidak ada garis bujur, maka kita ingin membuat kesalahan baru.

124
00:07:32,610 --> 00:07:37,610
‫Jadi seperti biasa, kesalahan aplikasi baru, dan saya tidak yakin apakah

125
00:07:39,520 --> 00:07:42,590
‫kami benar-benar diam, di sini, dan

126
00:07:42,590 --> 00:07:43,825
‫sebenarnya tidak.

127
00:07:43,825 --> 00:07:47,270
‫Jadi kami mengomentari bagian ini karena kami tidak lagi

128
00:07:47,270 --> 00:07:50,240
‫membutuhkan kesalahan aplikasi setelah membuat fungsi pabrik

129
00:07:50,240 --> 00:07:53,610
‫pengendali kami, tetapi sekarang, kami benar-benar membutuhkannya lagi, jadi

130
00:07:53,610 --> 00:07:55,003
‫mari kita kembalikan.

131
00:07:58,476 --> 00:08:00,876
‫Dan pesan di

132
00:08:06,510 --> 00:08:11,303
‫sini adalah tolong berikan, dalam format, seperti ini.

133
00:08:12,400 --> 00:08:15,463
‫Dan kode kesalahan 400 untuk permintaan itu.

134
00:08:17,230 --> 00:08:21,657
‫Bagus, dan sekarang hanya untuk melihat apakah semua ini

135
00:08:21,657 --> 00:08:23,220
‫berfungsi dengan

136
00:08:23,220 --> 00:08:27,490
‫benar, mari kita keluar dari ini ke konsol.

137
00:08:27,490 --> 00:08:32,490
‫Jarak itu bujur dan satuan.

138
00:08:36,050 --> 00:08:39,113
‫Dan mari kita juga mengirim pesan umum di

139
00:08:40,910 --> 00:08:44,273
‫sini, hanya untuk benar-benar menyelesaikan siklus permintaan untuk merespons.

140
00:08:45,240 --> 00:08:48,253
‫Dan untuk itu tentu saja sama seperti biasanya.

141
00:08:52,368 --> 00:08:54,950
‫Jadi status sukses untuk saat ini, dan tentu saja nanti

142
00:08:54,950 --> 00:08:57,523
‫kami akan mengirimkan data yang dikembalikan oleh kueri.

143
00:08:59,930 --> 00:09:01,823
‫Jadi sebenarnya mari kita salin ini di sini.

144
00:09:03,360 --> 00:09:05,610
‫Karena yang seperti ini sudah kita inginkan.

145
00:09:08,080 --> 00:09:13,060
‫Jadi kembali ke Postman, mari kita tutup semua ini.

146
00:09:13,060 --> 00:09:14,563
‫Yang ini tidak kita butuhkan lagi.

147
00:09:18,720 --> 00:09:21,620
‫Baiklah, kami juga tidak perlu login, dan kami

148
00:09:21,620 --> 00:09:23,883
‫juga tidak ingin ada pembaruan.

149
00:09:26,952 --> 00:09:30,800
‫Jadi bagaimanapun, kita juga perlu mendapatkan bagian ini yang

150
00:09:30,800 --> 00:09:33,379
‫terlalu malas untuk saya tulis.

151
00:09:33,379 --> 00:09:38,379
‫Jadi mari kita uji itu sekarang.

152
00:09:39,800 --> 00:09:41,410
‫Dan itu tidak berhasil,

153
00:09:41,410 --> 00:09:45,033
‫dan saya pikir yang ini sebenarnya kami sebut tur di dalam.

154
00:09:46,035 --> 00:09:46,868
‫Apakah kita?

155
00:09:47,830 --> 00:09:49,640
‫Jadi wisata di dalam.

156
00:09:49,640 --> 00:09:53,065
‫Jadi saya tidak yakin mengapa saya menulis jarak

157
00:09:53,065 --> 00:09:58,065
‫di sini, mari kita perbaiki dengan cepat di sini dalam contoh kita.

158
00:10:00,800 --> 00:10:03,513
‫Dan tentu saja itu adalah tur di dalamnya.

159
00:10:06,120 --> 00:10:10,057
‫Dan itu masih tidak berfungsi, jadi mari kita lihat dan implementasi

160
00:10:10,057 --> 00:10:12,007
‫rute di sini sebenarnya.

161
00:10:15,510 --> 00:10:17,993
‫Jadi di sini kita memilikinya, dan

162
00:10:17,993 --> 00:10:21,156
‫ya tentu saja, ini tidak benar sama sekali.

163
00:10:21,156 --> 00:10:26,156
‫Jadi yang ini di sini seharusnya tidak berada di dalam dot route, jelas.

164
00:10:26,450 --> 00:10:29,363
‫Tetapi sebaliknya, itu harus dalam metode get.

165
00:10:34,030 --> 00:10:36,820
‫Dan sekarang terlihat lebih seperti apa yang kita miliki

166
00:10:36,820 --> 00:10:37,860
‫di sini.

167
00:10:37,860 --> 00:10:40,163
‫Jadi dot route lalu dot get.

168
00:10:42,910 --> 00:10:45,963
‫Jadi kurang satu percobaan dan kali ini berhasil.

169
00:10:46,800 --> 00:10:49,200
‫Dan mari kita lihat konsolnya,

170
00:10:49,200 --> 00:10:51,634
‫dan memang, di sini kita mendapatkan

171
00:10:51,634 --> 00:10:56,450
‫jarak yang ditentukan dari garis lintang ke garis bujur, dan satuannya.

172
00:10:56,450 --> 00:10:58,690
‫Bagus, jadi sekarang saatnya untuk benar-benar

173
00:10:58,690 --> 00:11:00,673
‫menulis kueri itu sendiri.

174
00:11:01,610 --> 00:11:04,112
‫Sekarang kueri geospasial sebenarnya

175
00:11:04,112 --> 00:11:06,830
‫berfungsi sangat mirip dengan kueri biasa.

176
00:11:06,830 --> 00:11:10,677
‫Jadi kita masih akan menulis wisata sama dengan wisata. temukan, dan

177
00:11:17,400 --> 00:11:21,833
‫tentu saja, menunggu hasil dari janji ini.

178
00:11:24,720 --> 00:11:28,120
‫Dan kemudian permainan lama menandai semuanya sebagai

179
00:11:28,120 --> 00:11:33,120
‫async dan kemudian menangkap async dan membungkus fungsi kita di

180
00:11:34,890 --> 00:11:35,723
‫sana.

181
00:11:37,910 --> 00:11:40,280
‫Jadi kami memiliki semua tur di

182
00:11:40,280 --> 00:11:44,266
‫sini yang tidak digunakan, jadi mari kita lanjutkan dan edit

183
00:11:44,266 --> 00:11:46,240
‫ke objek respons segera.

184
00:11:46,240 --> 00:11:51,120
‫Jadi data, dan sekarang ingat bagaimana kami menyebutnya data.

185
00:11:52,610 --> 00:11:54,803
‫Dan kemudian tur.

186
00:11:58,970 --> 00:12:01,293
‫Oke, dan yang perlu kita lakukan adalah menentukan

187
00:12:01,293 --> 00:12:03,193
‫atau memfilter objek di sini.

188
00:12:04,660 --> 00:12:06,770
‫Jadi ingatlah bahwa pada

189
00:12:06,770 --> 00:12:09,010
‫dasarnya kita ingin menanyakan lokasi

190
00:12:09,010 --> 00:12:11,316
‫awal, karena bidang lokasi awal

191
00:12:11,316 --> 00:12:15,240
‫adalah yang menyimpan titik geospasial tempat setiap tur dimulai.

192
00:12:15,240 --> 00:12:17,683
‫Dan itulah tepatnya yang kami cari.

193
00:12:18,890 --> 00:12:23,023
‫Jadi, mulai lokasi, dan sekarang kita perlu menentukan

194
00:12:23,023 --> 00:12:25,900
‫nilai yang kita cari.

195
00:12:25,900 --> 00:12:28,389
‫Dan untuk itu, kita sekarang akan menggunakan operator

196
00:12:28,389 --> 00:12:30,203
‫geospasial yang disebut geo inside.

197
00:12:31,920 --> 00:12:34,120
‫Seperti biasa, kita perlu menentukan

198
00:12:34,120 --> 00:12:36,900
‫subjeknya, dan kemudian di sini, di mana

199
00:12:36,900 --> 00:12:39,860
‫sebelumnya kita akan menggunakan beberapa operator matematika seperti

200
00:12:39,860 --> 00:12:44,163
‫lebih besar dari, kali ini kita menggunakan operator geospasial seperti ini.

201
00:12:45,640 --> 00:12:49,950
‫Geo di dalam, dan operator ini melakukan persis seperti yang dikatakannya.

202
00:12:49,950 --> 00:12:53,740
‫Pada dasarnya ia menemukan dokumen dalam geometri tertentu.

203
00:12:53,740 --> 00:12:58,040
‫Dan geometri itulah yang perlu kita definisikan sebagai langkah selanjutnya.

204
00:12:58,040 --> 00:12:59,600
‫Jadi kami ingin mencari

205
00:12:59,600 --> 00:13:03,440
‫dokumen, tetapi di mana sebenarnya kami ingin menemukan dokumen-dokumen ini?

206
00:13:03,440 --> 00:13:06,792
‫Kami ingin menemukan mereka di dalam bola

207
00:13:06,792 --> 00:13:09,780
‫yang dimulai pada titik yang kami

208
00:13:09,780 --> 00:13:13,680
‫tentukan, dan yang memiliki radius jarak yang kami tentukan.

209
00:13:13,680 --> 00:13:16,023
‫Jadi sekali lagi dengan contoh kami

210
00:13:17,029 --> 00:13:18,646
‫di Los Angeles, jika

211
00:13:18,646 --> 00:13:21,660
‫Anda menentukan jarak 250 mil, maka itu berarti

212
00:13:21,660 --> 00:13:26,150
‫Anda ingin menemukan semua dokumen tur dalam lingkup yang memiliki radius 250 mil.

213
00:13:26,150 --> 00:13:28,190
‫Oke, masuk akal?

214
00:13:28,190 --> 00:13:30,313
‫Jadi sekarang kita harus

215
00:13:30,313 --> 00:13:33,810
‫meneruskan informasi di sini ke geo dalam operator, oke?

216
00:13:33,810 --> 00:13:36,563
‫Dan kami melakukannya dengan mendefinisikan bola tengah.

217
00:13:40,160 --> 00:13:42,793
‫Oke, dan sekali lagi, saya tahu ini

218
00:13:42,793 --> 00:13:47,380
‫terlihat cukup membingungkan, tapi itulah mengapa saya menjelaskannya di sini langkah demi langkah.

219
00:13:47,380 --> 00:13:49,150
‫Dan sebentar lagi,

220
00:13:49,150 --> 00:13:51,080
‫kita akan melihat dokumentasinya.

221
00:13:51,080 --> 00:13:53,307
‫Jadi operator bola

222
00:13:53,307 --> 00:13:56,900
‫tengah mengambil larik koordinat dan jari-jari.

223
00:13:56,900 --> 00:13:59,501
‫Dan mari kita memformat kode di

224
00:13:59,501 --> 00:14:02,770
‫sini setidaknya untuk membuatnya terlihat sedikit lebih mudah, oke?

225
00:14:02,770 --> 00:14:05,558
‫Kelihatannya sama, tapi bagaimanapun, begitulah cara

226
00:14:05,558 --> 00:14:08,020
‫Anda menemukan koordinat di sini.

227
00:14:08,020 --> 00:14:10,900
‫Dan untuk itu, kita membutuhkan

228
00:14:10,900 --> 00:14:14,890
‫array lain, dan kemudian garis bujur dan garis lintang.

229
00:14:14,890 --> 00:14:15,723
‫Dan itu benar.

230
00:14:15,723 --> 00:14:17,984
‫Pertama-tama Anda harus selalu menentukan

231
00:14:17,984 --> 00:14:21,040
‫garis bujur dan kemudian garis lintang, yang agak

232
00:14:21,040 --> 00:14:24,366
‫berlawanan dengan intuisi karena biasanya pasangan koordinat selalu ditentukan

233
00:14:24,366 --> 00:14:27,760
‫dengan garis lintang terlebih dahulu, dan garis bujur terlebih dahulu.

234
00:14:27,760 --> 00:14:30,298
‫Saya pikir saya menyebutkannya sebelumnya di

235
00:14:30,298 --> 00:14:33,590
‫geo yang berdekatan, untuk beberapa alasan berfungsi seperti ini.

236
00:14:33,590 --> 00:14:35,430
‫Jadi itu adalah pusat bola.

237
00:14:35,430 --> 00:14:36,263
‫Sekarang kita perlu menentukan radiusnya.

238
00:14:36,263 --> 00:14:41,130
‫Nah disini sebenarnya kita tidak lewat di kejauhan, melainkan

239
00:14:41,130 --> 00:14:45,100
‫mengharapkan radius dalam satuan khusus yang

240
00:14:45,100 --> 00:14:46,600
‫disebut radian.

241
00:14:46,600 --> 00:14:48,780
‫Jadi izinkan saya meletakkan variabel radius

242
00:14:48,780 --> 00:14:51,633
‫di sini, dan kemudian dalam sedetik kita akan mendefinisikannya.

243
00:14:56,190 --> 00:15:00,820
‫Jadi sekarang mari kita definisikan radiusnya.

244
00:15:00,820 --> 00:15:03,780
‫Jadi sekali lagi, jari-jari pada dasarnya adalah

245
00:15:03,780 --> 00:15:06,000
‫jarak yang kita inginkan sebagai

246
00:15:06,000 --> 00:15:09,500
‫jari-jari, tetapi diubah menjadi satuan khusus yang disebut radian.

247
00:15:09,500 --> 00:15:11,441
‫Dan untuk mendapatkan radian,

248
00:15:11,441 --> 00:15:14,217
‫kita perlu membagi jarak kita dengan

249
00:15:14,217 --> 00:15:15,940
‫jari-jari bumi.

250
00:15:15,940 --> 00:15:20,340
‫Jadi kedengarannya agak gila tapi memang begitulah cara kerjanya.

251
00:15:20,340 --> 00:15:23,532
‫Oke, jadi sekarang kita sebenarnya

252
00:15:23,532 --> 00:15:27,313
‫perlu mempertimbangkan satuan kita di sini, karena tentu

253
00:15:27,313 --> 00:15:31,180
‫saja jari-jari bumi berbeda dalam mil dengan kilometer.

254
00:15:31,180 --> 00:15:33,756
‫Jadi sekarang mari kita lakukan

255
00:15:33,756 --> 00:15:38,756
‫turnery yang lebih besar di sini dan katakan bahwa jika satuannya sama

256
00:15:40,074 --> 00:15:43,453
‫dengan mil, maka hasilnya di sini adalah jarak.

257
00:15:44,510 --> 00:15:49,290
‫Jadi pada dasarnya radius asli kita dibagi 3963. 2.

258
00:15:52,930 --> 00:15:55,383
‫Oke, sekali lagi, itu adalah jari-jari Bumi dalam mil.

259
00:15:55,383 --> 00:15:59,217
‫Oke, dan jika tidak, kita akan

260
00:15:59,217 --> 00:16:01,663
‫menganggapnya sebagai kilometer.

261
00:16:01,663 --> 00:16:05,941
‫Jadi jika itu kilometer, maka itu adalah

262
00:16:05,941 --> 00:16:10,157
‫jarak dibagi 6.378. 1 kilometer.

263
00:16:14,210 --> 00:16:19,210
‫Baiklah, jadi sekali lagi, konversi gila semacam ini di

264
00:16:19,900 --> 00:16:21,819
‫sini diperlukan karena

265
00:16:21,819 --> 00:16:26,117
‫biasanya radius bola kita diharapkan dalam radian.

266
00:16:26,117 --> 00:16:28,292
‫Dan radian kita dapatkan

267
00:16:28,292 --> 00:16:30,593
‫dengan membagi jarak dengan jari-jari Bumi.

268
00:16:31,450 --> 00:16:34,173
‫Bagus, jadi kami hampir siap untuk menguji ini sekarang.

269
00:16:34,173 --> 00:16:39,173
‫Mari kita tambahkan properti hasil yang dulu kita miliki.

270
00:16:43,530 --> 00:16:46,060
‫Jadi dengan jumlah hasil pada dasarnya,

271
00:16:46,060 --> 00:16:48,057
‫dan kemudian hal

272
00:16:48,057 --> 00:16:50,918
‫lain yang sangat penting adalah bahwa

273
00:16:50,918 --> 00:16:54,845
‫kita sebenarnya untuk dapat melakukan kueri dasar saja, pertama-tama

274
00:16:54,845 --> 00:16:57,664
‫kita perlu mengatribusikan indeks ke bidang

275
00:16:57,664 --> 00:17:01,440
‫di mana data geospasial yang kita cari berada disimpan.

276
00:17:01,440 --> 00:17:05,700
‫Jadi dalam hal ini, kita perlu menambahkan indeks untuk memulai lokasi.

277
00:17:05,700 --> 00:17:08,503
‫Jadi mari kita lakukan itu di sini dalam model tur.

278
00:17:10,310 --> 00:17:14,820
‫Jadi di sini, kita membutuhkan index lagi.

279
00:17:14,820 --> 00:17:17,853
‫Skema tur. indeks.

280
00:17:19,185 --> 00:17:24,185
‫Mulai lokasi, tetapi sekarang kita sebenarnya tidak akan menyetelnya menjadi satu atau

281
00:17:26,070 --> 00:17:28,530
‫minus satu, karena kali ini yang

282
00:17:28,530 --> 00:17:30,750
‫kita butuhkan adalah indeks

283
00:17:30,750 --> 00:17:31,940
‫yang berbeda.

284
00:17:31,940 --> 00:17:35,045
‫Jadi untuk data geospasial, indeks ini perlu

285
00:17:35,045 --> 00:17:39,160
‫berupa indeks bola 2D jika data tersebut menggambarkan titik-titik nyata

286
00:17:39,160 --> 00:17:41,314
‫di Bumi seperti bola.

287
00:17:41,314 --> 00:17:45,276
‫Atau sebaliknya, kita juga dapat menggunakan indeks 2D jika

288
00:17:45,276 --> 00:17:49,660
‫kita hanya menggunakan titik-titik fiktif pada bidang dua dimensi sederhana.

289
00:17:49,660 --> 00:17:52,210
‫Sekarang dalam kasus ini tentu saja,

290
00:17:52,210 --> 00:17:54,411
‫kita berbicara tentang titik nyata

291
00:17:54,411 --> 00:17:58,805
‫di permukaan bumi, jadi kita akan menggunakan indeks bola 2D di sini.

292
00:17:58,805 --> 00:18:03,805
‫Jadi bola 2D seperti ini.

293
00:18:04,000 --> 00:18:07,253
‫Oke, jadi pada dasarnya kami mengatakan

294
00:18:07,253 --> 00:18:12,090
‫bahwa lokasi awal ini di sini harus diindeks ke bola 2D.

295
00:18:12,090 --> 00:18:16,510
‫Jadi bola mirip Bumi tempat semua data kita berada.

296
00:18:16,510 --> 00:18:18,906
‫Hebat, dan dengan itu, kita

297
00:18:18,906 --> 00:18:22,283
‫sekarang harus benar-benar siap untuk menguji rute baru kita.

298
00:18:23,520 --> 00:18:26,839
‫Oke, mari kita tingkatkan radius ini di

299
00:18:26,839 --> 00:18:31,839
‫sini sedikit 400 mil, jadi mari kita lihat apa yang kita dapatkan.

300
00:18:32,260 --> 00:18:34,609
‫Nah, kita mendapatkan kesalahan yang tampak aneh

301
00:18:34,609 --> 00:18:37,282
‫ini, dan saya tidak begitu yakin apa itu.

302
00:18:37,282 --> 00:18:40,290
‫Jadi, mari kita lihat.

303
00:18:40,290 --> 00:18:43,330
‫Dan mungkin ada yang salah di sini dengan radius,

304
00:18:43,330 --> 00:18:46,810
‫tetapi sebenarnya ini adalah waktu yang tepat untuk menguji debugger kami.

305
00:18:46,810 --> 00:18:49,130
‫Jadi saya menunjukkannya kepada Anda sejak

306
00:18:49,130 --> 00:18:51,700
‫lama, tetapi ini adalah kasus penggunaan yang baik

307
00:18:51,700 --> 00:18:53,743
‫untuk benar-benar melihat debugger lagi.

308
00:18:54,950 --> 00:18:57,620
‫Jadi saya pikir kami memiliki skrip NPM untuk

309
00:18:57,620 --> 00:18:59,140
‫itu, yang disebut debug.

310
00:18:59,140 --> 00:19:04,140
‫Jadi kita perlu mengetahui proses ini, dan kemudian katakan NPM run debug.

311
00:19:07,460 --> 00:19:08,293
‫Oke?

312
00:19:09,570 --> 00:19:12,818
‫Jadi itu harus membuka jendela yang bagus ini.

313
00:19:12,818 --> 00:19:17,233
‫Dan mari kita tutup semua file ini di sini.

314
00:19:18,560 --> 00:19:21,898
‫Oke, jadi kami berada di pengontrol kami.

315
00:19:21,898 --> 00:19:23,673
‫Pengendali tur.

316
00:19:24,680 --> 00:19:29,590
‫Jadi sekarang, mari kita tetapkan titik istirahat di sini.

317
00:19:29,590 --> 00:19:31,940
‫Oke, karena pada titik ini, kita

318
00:19:31,940 --> 00:19:33,998
‫akan menetapkan semua variabel

319
00:19:33,998 --> 00:19:38,480
‫kita, dan kemudian kita dapat melihat nilainya untuk melihat apa yang terjadi.

320
00:19:38,480 --> 00:19:40,877
‫Jadi tentu saja kita bisa melakukannya

321
00:19:40,877 --> 00:19:43,343
‫dengan konsol sederhana. log, tetapi dalam

322
00:19:43,343 --> 00:19:45,544
‫beberapa situasi di mana Anda memiliki banyak

323
00:19:45,544 --> 00:19:48,399
‫hal yang terjadi, dan juga bagus untuk menggunakan debugger.

324
00:19:48,399 --> 00:19:50,777
‫Jadi kita perlu mengirim permintaan kita.

325
00:19:50,777 --> 00:19:54,750
‫Dan sekarang kita berada di debugger pada titik istirahat kita.

326
00:19:54,750 --> 00:19:56,240
‫Jadi pada saat

327
00:19:56,240 --> 00:19:58,280
‫ini, kode kita benar-benar berhenti.

328
00:19:58,280 --> 00:20:00,187
‫Dan kita dapat melihat di

329
00:20:00,187 --> 00:20:02,953
‫sini bahwa sebenarnya semua variabel kita tampaknya telah didefinisikan.

330
00:20:04,130 --> 00:20:07,280
‫Mari kita lihat itu di sini di lokal.

331
00:20:07,280 --> 00:20:09,153
‫Jadi kita punya

332
00:20:09,153 --> 00:20:13,360
‫jarak, kita punya lintang, bujur, dan juga jari-jari.

333
00:20:13,360 --> 00:20:14,916
‫Jadi mari kita lanjutkan di sini.

334
00:20:14,916 --> 00:20:16,493
‫Jadi kami melompat

335
00:20:16,493 --> 00:20:21,493
‫ke baris berikutnya karena if here tidak masuk ke blok if.

336
00:20:24,350 --> 00:20:27,400
‫Dan sekarang menjalankan semua fungsi ini.

337
00:20:27,400 --> 00:20:29,600
‫Tapi mari kita keluar dari mereka,

338
00:20:29,600 --> 00:20:32,680
‫dan sekarang kita benar-benar mendapatkan tur yang tidak ditentukan.

339
00:20:32,680 --> 00:20:36,010
‫Jadi jika kita melanjutkan ini,

340
00:20:36,010 --> 00:20:40,690
‫kita mungkin akan mendapatkan kesalahan yang sama lagi, bukan?

341
00:20:40,690 --> 00:20:43,160
‫Dan memang, kami melakukannya.

342
00:20:43,160 --> 00:20:46,043
‫Jadi itu pasti sesuatu di sini

343
00:20:46,043 --> 00:20:50,894
‫di baris ini, katakanlah, dan memang, saya pikir saya menemukan kesalahannya.

344
00:20:50,894 --> 00:20:53,820
‫Jadi begitulah cara Anda menulis bola.

345
00:20:53,820 --> 00:20:57,096
‫Jadi bola lebih seperti ini, kan?

346
00:20:57,096 --> 00:21:01,963
‫Jadi saya berharap dan saya percaya bahwa sebenarnya ini adalah kesalahan.

347
00:21:04,100 --> 00:21:07,390
‫Jadi mari kita tutup debugger di sini, dan

348
00:21:07,390 --> 00:21:10,718
‫mari kita lega, dan sebenarnya itu harus memperbarui

349
00:21:10,718 --> 00:21:12,593
‫kode saya di sini.

350
00:21:13,690 --> 00:21:15,913
‫Mari kita lihat, dan ternyata tidak.

351
00:21:17,180 --> 00:21:21,980
‫Saya tidak yakin mengapa demikian, tapi baiklah.

352
00:21:21,980 --> 00:21:23,373
‫Mari kita jalankan ini di sini lagi.

353
00:21:24,230 --> 00:21:27,350
‫Bukan perintah ini,

354
00:21:27,350 --> 00:21:30,623
‫oke, mari kita mulai NPM.

355
00:21:34,210 --> 00:21:35,463
‫Tutup semua ini.

356
00:21:36,970 --> 00:21:38,293
‫Dan sekarang coba lagi.

357
00:21:40,500 --> 00:21:44,080
‫Ah, dan sekarang kita mendapatkan beberapa hasil nyata di sini, bagus.

358
00:21:44,080 --> 00:21:47,800
‫Jadi ini memberi tahu saya bahwa tur ini

359
00:21:47,800 --> 00:21:51,170
‫berada dalam jarak 400 mil yang ditentukan.

360
00:21:51,170 --> 00:21:54,550
‫Tapi bagaimana kita bisa benar-benar tahu bahwa itu benar?

361
00:21:54,550 --> 00:21:57,827
‫Sebenarnya kita bisa menggunakan kompas untuk ini.

362
00:21:57,827 --> 00:22:01,784
‫Jadi jika kita membuka kompas di sini, kita memiliki sesuatu yang

363
00:22:01,784 --> 00:22:04,090
‫sangat bagus yaitu skema ini.

364
00:22:04,090 --> 00:22:06,660
‫Jadi mari kita lakukan itu di sini di tur.

365
00:22:06,660 --> 00:22:09,818
‫Jadi sekarang kita bisa sampai ke skema di sini

366
00:22:09,818 --> 00:22:11,773
‫dan kemudian menganalisis skema ini.

367
00:22:12,830 --> 00:22:15,456
‫Jadi analisis skemanya, dan sekarang di sini kita memiliki

368
00:22:15,456 --> 00:22:17,893
‫ringkasan yang bagus untuk semua bidang kita.

369
00:22:19,648 --> 00:22:20,893
‫Misalnya

370
00:22:20,893 --> 00:22:23,477
‫Anda melihat bahwa kesulitannya mudah

371
00:22:23,477 --> 00:22:28,477
‫di 50% dokumen, sedang di 30%, dan sulit di 20%.

372
00:22:28,480 --> 00:22:29,990
‫Anda juga melihat durasi ini.

373
00:22:29,990 --> 00:22:34,880
‫Jadi di 20% itu lima, dan juga sembilan juga lebih populer

374
00:22:34,880 --> 00:22:36,643
‫daripada durasi lainnya.

375
00:22:38,030 --> 00:22:41,491
‫Sekarang apa yang saya benar-benar tertarik di sini adalah lokasi.

376
00:22:41,491 --> 00:22:46,283
‫Atau sebenarnya lokasi awal, jadi di sini.

377
00:22:47,400 --> 00:22:49,801
‫Dan sekarang biasanya, Anda akan melihat peta di sini.

378
00:22:49,801 --> 00:22:53,217
‫Tapi sekarang, tidak ada peta karena kami

379
00:22:53,217 --> 00:22:56,816
‫memiliki dokumen sekarang yang tidak memiliki lokasi awal.

380
00:22:56,816 --> 00:22:58,648
‫Jadi agar ini

381
00:22:58,648 --> 00:23:02,616
‫berfungsi dengan baik, kita perlu menyingkirkan dokumen itu.

382
00:23:02,616 --> 00:23:05,046
‫Jadi itu adalah salah satu dokumen

383
00:23:05,046 --> 00:23:08,994
‫pengujian yang kami buat, tetapi yang sekarang sebenarnya tidak lagi kami perlukan.

384
00:23:08,994 --> 00:23:12,330
‫Jadi biarkan saya melihat apakah itu muncul di sini.

385
00:23:12,330 --> 00:23:14,065
‫Mungkin itu pada akhirnya.

386
00:23:14,065 --> 00:23:16,452
‫Jadi ya, ini tur uji coba baru.

387
00:23:16,452 --> 00:23:19,681
‫Mari kita singkirkan itu.

388
00:23:19,681 --> 00:23:23,310
‫Kembali ke skema kita, mari kita analisa lagi.

389
00:23:23,310 --> 00:23:28,310
‫Oke, jadi di sini kita memiliki aplikasi bintang.

390
00:23:31,650 --> 00:23:35,760
‫Dan di sini Anda sudah melihat petanya, jadi itu bagus, bukan?

391
00:23:35,760 --> 00:23:38,660
‫Itu benar-benar fitur yang berguna.

392
00:23:38,660 --> 00:23:40,485
‫Jadi kita harus memiliki sembilan poin di sini.

393
00:23:40,485 --> 00:23:44,880
‫Jadi satu, dua, tiga, empat, lima, enam, tujuh, delapan, satu

394
00:23:44,880 --> 00:23:47,240
‫di sini, yang kesembilan.

395
00:23:47,240 --> 00:23:50,313
‫Jadi mungkin yang ini untuk melihat Cahaya Utara.

396
00:23:50,313 --> 00:23:51,940
‫Benar?

397
00:23:51,940 --> 00:23:54,880
‫Dan sekarang di sini kita benar-benar dapat mereplikasi kueri

398
00:23:54,880 --> 00:23:56,583
‫itu menggunakan antarmuka grafis ini.

399
00:23:57,780 --> 00:24:00,960
‫Jadi mari kita datang ke Los Angeles dan kira-kira

400
00:24:00,960 --> 00:24:03,210
‫ke titik di mana kita berada.

401
00:24:03,210 --> 00:24:05,920
‫Jadi katakanlah di sini, dan saya memperkecil sedikit

402
00:24:05,920 --> 00:24:07,840
‫hanya untuk memberi lebih

403
00:24:07,840 --> 00:24:11,120
‫banyak ruang, tetapi sekarang kita dapat menekan shift lalu menyeret.

404
00:24:11,120 --> 00:24:12,783
‫Jadi seperti yang tertulis di sini.

405
00:24:13,810 --> 00:24:16,340
‫Jadi letakkan tangan di tempat tujuan kami, jadi pada dasarnya

406
00:24:16,340 --> 00:24:18,727
‫di suatu tempat di sini di Los Angeles.

407
00:24:18,727 --> 00:24:22,750
‫Sekarang geser, lalu seret, sekarang baiklah.

408
00:24:22,750 --> 00:24:25,410
‫Dan Anda dapat melihat bahwa saat

409
00:24:25,410 --> 00:24:28,132
‫kita mulai meningkatkan bola ini, kita semakin

410
00:24:28,132 --> 00:24:32,053
‫banyak ke beberapa titik di sini yang berubah menjadi kuning, oke?

411
00:24:32,053 --> 00:24:37,053
‫Dan saya percaya bahwa radius kami kira-kira seperti 0. 1, atau

412
00:24:37,232 --> 00:24:42,232
‫sesuatu seperti ini, katakanlah.

413
00:24:42,320 --> 00:24:45,540
‫Jadi Anda lihat sebenarnya ada tiga dokumen, jadi

414
00:24:45,540 --> 00:24:48,740
‫tiga tur semua dalam lingkup yang baru saja

415
00:24:48,740 --> 00:24:51,010
‫kita buat ini, oke?

416
00:24:51,010 --> 00:24:54,380
‫Jadi kita memiliki bola ini dengan jari-jari 0. 1, seperti yang Anda

417
00:24:54,380 --> 00:24:56,060
‫lihat di sini.

418
00:24:56,060 --> 00:24:58,583
‫Dan sebenarnya kueri ini terlihat seperti

419
00:24:58,583 --> 00:25:02,260
‫yang baru saja kita isi dengan kode di fungsi pengontrol

420
00:25:02,260 --> 00:25:03,218
‫kita, bukan?

421
00:25:03,218 --> 00:25:07,500
‫Jadi kita mendapatkan tiga dokumen ini yang ditandai sebagai

422
00:25:07,500 --> 00:25:12,177
‫oranye, jadi sekarang mari kita tekan analisis di sini lagi,

423
00:25:12,177 --> 00:25:15,853
‫dan sekarang kueri kita mengembalikan tiga dokumen.

424
00:25:17,100 --> 00:25:19,920
‫Jadi mari kita lihat nama-nama sebenarnya.

425
00:25:19,920 --> 00:25:21,731
‫Jadi di mana itu?

426
00:25:21,731 --> 00:25:24,171
‫Untuk pecinta olahraga, pengecap anggur,

427
00:25:24,171 --> 00:25:26,130
‫dan kemping taman.

428
00:25:26,130 --> 00:25:28,670
‫Dan tiga tur yang kami dapatkan di

429
00:25:28,670 --> 00:25:32,440
‫Postman, jadi sebagai hasil untuk API, seharusnya tiga ini sama persis.

430
00:25:32,440 --> 00:25:35,743
‫Jadi pecinta olahraga, pencicip anggur, dan kemping taman.

431
00:25:39,440 --> 00:25:43,853
‫Jadi pekemah taman, maka Anda memiliki, pecinta olahraga,

432
00:25:45,806 --> 00:25:47,643
‫dan yang

433
00:25:51,168 --> 00:25:54,420
‫terakhir ingat harus menjadi pencicip anggur,

434
00:25:54,420 --> 00:25:56,450
‫dan memang begitu.

435
00:25:56,450 --> 00:25:58,467
‫Hebat, itu benar-benar fantastis.

436
00:25:58,467 --> 00:26:02,706
‫Mari kita kurangi ini di sini menjadi 200, mari

437
00:26:02,706 --> 00:26:06,214
‫kita lihat berapa banyak hasil yang Anda

438
00:26:06,214 --> 00:26:09,293
‫dapatkan, dan sebenarnya itu hanya satu.

439
00:26:10,150 --> 00:26:12,635
‫Jadi mari kita kembali ke kompas di sini.

440
00:26:12,635 --> 00:26:16,510
‫Mari kita hapus kueri ini di sini.

441
00:26:16,510 --> 00:26:19,159
‫Jadi jika kita kembali ke semua

442
00:26:19,159 --> 00:26:21,473
‫dokumen kita, lihat peta kita.

443
00:26:23,200 --> 00:26:28,150
‫Dan inilah LA, oke.

444
00:26:28,150 --> 00:26:30,803
‫Ini radius lain harus seperti 0. 05.

445
00:26:31,861 --> 00:26:34,970
‫Sekarang sesuatu seperti ini, katakanlah,

446
00:26:34,970 --> 00:26:38,125
‫dan memang kita hanya mendapatkan satu tur

447
00:26:38,125 --> 00:26:42,209
‫ini yang saya yakini sebagai pencicip anggur atau semacamnya.

448
00:26:42,209 --> 00:26:44,184
‫Ya, kita harus menganalisis ini.

449
00:26:44,184 --> 00:26:49,184
‫Jadi oh, sebenarnya itu adalah pecinta olahraga.

450
00:26:51,650 --> 00:26:54,233
‫Jadi mari kita lihat apakah itu yang kita dapatkan di sini.

451
00:26:56,210 --> 00:26:57,800
‫Dan memang, itu.

452
00:26:57,800 --> 00:27:00,211
‫Jadi ini adalah pecinta olahraga,

453
00:27:00,211 --> 00:27:04,910
‫dan itulah satu-satunya tur yang berjarak 200 mil dari Los Angeles.

454
00:27:04,910 --> 00:27:06,000
‫Fantastis.

455
00:27:06,000 --> 00:27:09,883
‫Jadi ini menurut saya sangat menarik, sangat keren.

456
00:27:11,860 --> 00:27:14,036
‫Biarkan saya menunjukkan hal lain dengan

457
00:27:14,036 --> 00:27:18,303
‫sangat cepat, sehingga Anda juga dapat melihat semua lokasi kami di peta.

458
00:27:19,200 --> 00:27:20,823
‫Jadi di sini.

459
00:27:22,800 --> 00:27:25,818
‫Jadi ini adalah lokasi

460
00:27:25,818 --> 00:27:30,280
‫dari semua tur, jadi yang disimpan di lokasi.

461
00:27:30,280 --> 00:27:32,830
‫Jadi kita punya koordinatnya, dan kita juga

462
00:27:32,830 --> 00:27:35,293
‫punya hari, deskripsi, dan waktunya, oke?

463
00:27:38,067 --> 00:27:41,266
‫Dan tentu saja pertanyaan kami bukan tentang semua ini di sini.

464
00:27:41,266 --> 00:27:43,516
‫Untuk kueri itu, kami benar-benar hanya

465
00:27:43,516 --> 00:27:46,583
‫peduli dengan lokasi bintang, tetapi saya tetap ingin menunjukkan

466
00:27:46,583 --> 00:27:50,890
‫kepada Anda peta ini di mana kami dapat benar-benar melihat semua lokasi juga.

467
00:27:50,890 --> 00:27:54,251
‫Oke, jadi memang ada potensi besar untuk

468
00:27:54,251 --> 00:27:56,770
‫menggunakan data geospasial dengan MongoDB.

469
00:27:56,770 --> 00:27:59,870
‫Kemungkinannya benar-benar tidak terbatas untuk melakukan

470
00:27:59,870 --> 00:28:02,010
‫kueri geospasial seperti ini.

471
00:28:02,010 --> 00:28:03,735
‫Dan saya sebenarnya ingin menunjukkan

472
00:28:03,735 --> 00:28:06,637
‫kepada Anda jika kami memiliki lebih banyak operator geospasial di MongoDB.

473
00:28:06,637 --> 00:28:10,603
‫Jadi mari kita lihat dokumentasi di sini lagi.

474
00:28:11,931 --> 00:28:14,569
‫Jadi mari kita turun

475
00:28:14,569 --> 00:28:19,569
‫ke sini lagi ke referensi dan operator, dan operator kueri.

476
00:28:21,970 --> 00:28:25,530
‫Dan saya pikir itu di suatu tempat di bawah sini, ya.

477
00:28:25,530 --> 00:28:27,583
‫Jadi di sini kita memiliki operator geospasial.

478
00:28:27,583 --> 00:28:31,020
‫Dan Anda melihat bahwa ini adalah salah satu yang kami

479
00:28:31,020 --> 00:28:33,599
‫gunakan, jadi salah satu yang memilih

480
00:28:33,599 --> 00:28:36,190
‫geometri dalam geometri yang berdekatan berbatasan geo.

481
00:28:36,190 --> 00:28:39,220
‫Kedengarannya agak aneh, tetapi geometri batas geo

482
00:28:39,220 --> 00:28:42,546
‫yang berdekatan ini adalah bola yang kita definisikan

483
00:28:42,546 --> 00:28:44,570
‫dalam kode kita, bukan?

484
00:28:44,570 --> 00:28:46,820
‫Sekarang kita juga bisa menggunakan snear di sini,

485
00:28:46,820 --> 00:28:48,373
‫mari kita lihat itu.

486
00:28:49,560 --> 00:28:51,833
‫Dan itu akan terlihat sedikit berbeda.

487
00:28:51,833 --> 00:28:54,830
‫Jadi dalam hal ini, kita akan mendefinisikan titik menggunakan

488
00:28:54,830 --> 00:28:57,600
‫garis bujur dan garis lintang yang kita dapatkan, dan

489
00:28:57,600 --> 00:28:59,498
‫kemudian kita akan menentukan jarak maksimum

490
00:28:59,498 --> 00:29:01,223
‫di sini dalam meter.

491
00:29:01,223 --> 00:29:03,342
‫Dan kemudian dalam hal ini,

492
00:29:03,342 --> 00:29:06,164
‫kita tidak perlu melakukan konversi ke radian.

493
00:29:06,164 --> 00:29:07,890
‫Oke, yang juga bagus dari yang

494
00:29:07,890 --> 00:29:10,188
‫satu ini adalah kita bisa menentukan jarak minimum.

495
00:29:10,188 --> 00:29:12,782
‫Jadi dengan ini, misalnya, kita dapat

496
00:29:12,782 --> 00:29:16,779
‫mengecualikan tur yang hanya berjarak 50 mil dari titik awal

497
00:29:16,779 --> 00:29:18,040
‫kita, oke?

498
00:29:18,040 --> 00:29:20,270
‫Jadi jika suatu saat Anda membutuhkan sesuatu

499
00:29:20,270 --> 00:29:23,993
‫seperti ini, maka Anda selalu dapat menggunakan operator baru di sini juga.

500
00:29:25,071 --> 00:29:26,503
‫Oke, bagus.

501
00:29:27,916 --> 00:29:30,468
‫Jadi dengan kueri geospasial yang baru saja

502
00:29:30,468 --> 00:29:33,600
‫kita definisikan di sini, pada dasarnya kita menemukan dokumen yang

503
00:29:33,600 --> 00:29:36,401
‫terletak dalam jarak tertentu dari titik awal kita.

504
00:29:36,401 --> 00:29:39,500
‫Tetapi bagaimana jika kita benar-benar ingin mengetahui

505
00:29:39,500 --> 00:29:43,600
‫jarak yang tepat dari semua tur ke titik awal itu?

506
00:29:43,600 --> 00:29:46,300
‫Nah itulah yang akan kita hitung

507
00:29:46,300 --> 00:29:47,683
‫di kuliah berikutnya.

